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