Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Linguagem C

Diferença entre estrutura e classe:explicada com exemplo de C++

O que é Estrutura?


Estrutura é um tipo de dados definido pelo usuário que combina itens de dados logicamente relacionados de diferentes tipos de dados, como float, char, int, etc., juntos.

Todos os elementos da estrutura são armazenados em locais de memória contíguos. A variável de tipo de estrutura ajuda a armazenar mais de um item de dados de vários tipos de dados sob um nome.

O que é classe?


Classe é um projeto ou um conjunto de instruções para construir um tipo específico de objeto. É um conceito básico de Programação Orientada a Objetos que gira em torno de entidades da vida real. A classe em uma linguagem de programação determina como um objeto se comportará e o que o objeto conterá.

Class também é um tipo de dados definido pelo usuário que pode ter diferentes tipos de dados e funções de membro dentro de seu corpo.

Sintaxe de classe em C++


Aqui está uma sintaxe de classe:
class class-name
{
// data
// functions
};

Na sintaxe acima, o nome da classe é o nome atribuído à classe. Os dados são membros da classe, normalmente declarados como variáveis. As funções aqui são as funções de classe.

Sintaxe da estrutura em C++


Aqui está uma sintaxe de Estrutura:
struct struct_name
{
// struct data members
}

Na sintaxe acima, a palavra-chave struct é usada. O struct_name é o nome da estrutura. Os membros struct são adicionados entre chaves. Esses membros provavelmente pertencem a diferentes tipos de dados.

Diferença entre Estrutura e Classe




Aqui está a principal diferença entre Estrutura e Classe:
Estrutura Classe Estrutura é um tipo de dados definido pelo usuário que combina itens de dados logicamente relacionados de diferentes tipos de dados como char, float, int, etc. declarado usando a palavra-chave struct.Pode ser declarado usando a palavra-chave class.É um tipo de dados do tipo valor.É um tipo de dados do tipo referência.Você não pode herdá-lo de outras estruturas ou classes.Você pode herdá-lo de outras estruturas ou classes Pode instanciar objetos sem usar uma nova palavra-chave. Pode instanciar um objeto usando uma nova palavra-chave. Você não pode alterar o construtor padrão da estrutura. Você pode alterar o construtor padrão da classe. A estrutura não pode ter um destruidor. A classe pode ter um destruidor. Na estrutura, todos os tipos de valor são alocados na pilha.Na classe, todos os tipos de valor são alocados no heap.É usado em programas pequenos.É usado em programas grandes.Funções membro não podem ser abstratas ou virtuais.Funções membro podem ser abstratas ou virt ual.Instâncias de estrutura são chamadas de 'variáveis ​​de estrutura.'Instâncias de classe são chamadas de objetos.Ela não pode ter valores nulos.Pode ter valores nulos.Variáveis ​​de membro de estrutura não podem ser iniciadas diretamente.Variáveis ​​de membro de classe podem ser iniciadas diretamente.Se você não tiver declarado qualquer especificador de acesso, os membros da estrutura são públicos. Se você não declarou nenhum especificador de acesso, os membros da classe são privados.

Qual ​​deles você deve escolher?


Se você tem uma grande quantidade de memória ou gosta de usar um conceito como herança, pode escolher uma classe. Por outro lado, a estrutura pode ser usada quando você tem um pequeno campo de memória ou footprint que é necessário para inicializar os valores padrão.

DIFERENÇAS PRINCIPAIS


Linguagem C

  1. Classes e objetos C++
  2. Herança Múltipla, Multinível e Hierárquica C++
  3. Função de amigo C++ e classes de amigo
  4. Operadores em C++ com Exemplo:O que é, Tipos e Programas
  5. Instrução C++ Switch Case com EXEMPLO
  6. Alocação dinâmica de matrizes em C++ com exemplo
  7. Estrutura C++ com exemplo
  8. std::list em C++ com exemplo
  9. Tutorial de classe abstrata C# com exemplo:O que é abstração?
  10. Diferença entre while e do-while:explicado com exemplos