Struktura (C++)
struct Klíčové slovo definuje typ struktury nebo proměnné typu Struktura.
[template-spec] struct[ms-decl-spec] [tag [: base-list ]]
{
member-list
} [declarators];
[struct] tag declarators;
Parametry
template-spec
Specifikace volitelné šablony.Další informace naleznete v Specifikace šablony.struct
struct Klíčové slovo.ms-decl-spec
Specifikace třídy úložiště volitelné.Další informace najdete __declspec klíčové slovo.tag
Název typu dané struktury.Značka stane vyhrazené slovo v rámci struktury.Příznak je volitelné.Pokud je tento argument vynechán, je definována anonymní struktury.Další informace naleznete v tématu Anonymní typy tříd.base-list
Volitelný seznam třídy nebo struktury této struktury odvodit jeho členy z.Další informace naleznete v tématu Základní třídy.Každý název základní třídy nebo struktury lze předcházet specifikátor přístupu (veřejné, soukromé, chráněné) a virtuální klíčové slovo.Naleznete v tabulce člena přístup Řízení přístupu členy třídy Další informace.member-list
Seznam členů struktury.Odkazují na Členové třídy Další informace.Jediný rozdíl je, že struct je použit místo class.declarators
Declarator seznam zadání názvu třídy.Seznamy declarator prohlásit jednu nebo více instancí typu Struktura.Declarators mohou zahrnovat inicializátor seznamy, pokud jsou všechny datové členy třídy public.Inicializátor seznamy jsou společné struktur, protože data jsou public ve výchozím nastavení.Další informace naleznete v tématu Přehled Declarators.
Poznámky
Typ struktury je složený typ definovaný uživatelem.Skládá se z polí nebo členy, které mohou mít různé typy.
V jazyce C++ konstrukce je stejný jako třídy s výjimkou, že jeho členové jsou public ve výchozím nastavení.
Informace o spravované třídy a struktur, viz třídy a struktur.
Struktuře
C, musí explicitně použít struct klíčové slovo strukturu deklarovat.V jazyce C++ je zbytečné po definování typu.
Máte možnost deklarování proměnných, když je definován typ struktury uvádění jeden nebo více oddělených čárkami názvy proměnných mezi pravá složená závorka a středník.
Můžete inicializovat strukturu proměnné.Inicializace pro každou proměnnou, musí být uzavřeny v závorkách.
Související informace naleznete v tématu třídy, unie, a výčtu.
Příklad
// 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