struct (C++)

O struct palavra-chave define um tipo de estrutura e/ou em uma variável de um tipo de estrutura.

[template-spec] struct[ms-decl-spec] [tag [: base-list ]]
{ 
   member-list 
} [declarators];
[struct] tag declarators;

Parâmetros

  • template-spec
    Especificações do modelo opcional.Para obter mais informações, consulte Especificações do modelo.

  • struct
    O struct palavra-chave.

  • ms-decl-spec
    Especificação de classe de armazenamento opcional.Para obter mais informações, consulte o __declspec palavra-chave.

  • tag
    O nome de tipo dado na estrutura.A marca torna-se uma palavra reservada dentro do escopo da estrutura.A marca é opcional.Se omitido, uma estrutura de anônima é definida.Para obter mais informações, consulte Tipos anônimos de classe.

  • base-list
    Lista opcional de classes ou estruturas que essa estrutura irão derivar seus membros do.Consulte Classes base para obter mais informações.Cada nome de classe ou estrutura de base pode ser precedido por um especificador de acesso (pública, particular, protegido) e o virtual palavra-chave.Consulte a tabela de acesso de membro na Controlando o acesso a membros da classe para obter mais informações.

  • member-list
    Lista de membros de estrutura.Consulte Membros de classe para obter mais informações.A única diferença aqui é que struct é usado no lugar de class.

  • declarators
    Lista de Declarador especificando os nomes da classe.Declarador listas declarar uma ou mais instâncias do tipo structure.Declaradores podem incluir listas de inicializador se todos os membros de dados da classe são public.Listas de inicializador são comuns em estruturas como membros de dados são public por padrão.Consulte Visão geral de declaradores para obter mais informações.

Comentários

Um tipo de estrutura é um tipo composto definidos pelo usuário.Ele é composto de campos ou membros que podem ter tipos diferentes.

No C++, uma estrutura é o mesmo que uma classe, exceto pelo fato de que seus membros são public por padrão.

Para obter informações sobre classes gerenciadas e estruturas, consulte Classes e estruturas.

Usando uma estrutura

Em C, você deve usar explicitamente a struct palavra-chave para declarar uma estrutura.No C++, isso é desnecessário depois que o tipo foi definido.

Você tem a opção de declaração de variáveis quando o tipo de estrutura é definido, colocando um ou mais separados por ponto-e-vírgula nomes de variáveis entre a chave de fechamento e o ponto e vírgula.

Variáveis de estrutura podem ser inicializadas.A inicialização para cada variável deve ser colocada entre chaves.

Para obter informações relacionadas, consulte classe, união, e enum.

Exemplo

// struct1.cpp
struct PERSON {   // Declare PERSON struct type
   int age;   // Declare member types
   long ss;
   float weight;
   char name[25];
} family_member;   // Define object of type PERSON

int main() {
   struct PERSON sister;   // C style structure declaration
   PERSON brother;   // C++ style structure declaration
   sister.age = 13;   // assign values to members
   brother.age = 7;
}

struct POINT {   // Declare POINT structure
   int x;   // Define members x and y
   int y;
} spot = { 20, 40 };    // Variable spot has
                        // values x = 20, y = 40

struct POINT there;     // Variable there has POINT type

struct CELL {   // Declare CELL bit field
   unsigned short character  : 8;  // 00000000 ????????
   unsigned short foreground : 3;  // 00000??? 00000000
   unsigned short intensity  : 1;  // 0000?000 00000000
   unsigned short background : 3;  // 0???0000 00000000
   unsigned short blink      : 1;  // ?0000000 00000000
} screen[25][80];       // Array of bit fields 

Consulte também

Referência

Definindo tipos de classe