třídy (C++)
class Klíčové slovo deklaruje typ třídy nebo objektu typu třída definuje.
[template-spec] class [ms-decl-spec] [tag [: base-list ]]
{
member-list
} [declarators];
[ class ] tag declarators;
Parametry
template-spec
Specifikace volitelné šablony.Další informace naleznete v Specifikace šablony.class
class Klíčové slovo.ms-decl-spec
Specifikace třídy úložiště volitelné.Další informace najdete __declspec klíčové slovo.tag
Zadejte název třídy.Značka stane vyhrazené slovo v rozsahu třídy.Příznak je volitelné.Pokud je tento argument vynechán, je definována anonymní třídy.Další informace naleznete v tématu Anonymní typy tříd.base-list
Volitelný seznam třídy nebo struktury této třídy odvodit z členů.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ů třídy.Odkazují na Členové třídy Další informace.declarators
Zadání jména jednu nebo více instancí třídy typu seznam declarator.Declarators mohou zahrnovat inicializátor seznamy, pokud jsou všechny datové členy třídy public.Toto je běžnější struktur, jejichž data jsou public než ve výchozím tříd.Další informace naleznete v tématu Přehled Declarators.
Poznámky
Další informace o třídách, naleznete v následujících tématech:
Informace o spravované třídy a struktur, viz třídy a struktur
Příklad
// class.cpp
// compile with: /EHsc
// Example of the class keyword
// Exhibits polymorphism/virtual functions.
#include <iostream>
#include <string>
#define TRUE = 1
using namespace std;
class dog
{
public:
dog()
{
_legs = 4;
_bark = true;
}
void setDogSize(string dogSize)
{
_dogSize = dogSize;
}
virtual void setEars(string type) // virtual function
{
_earType = type;
}
private:
string _dogSize, _earType;
int _legs;
bool _bark;
};
class breed : public dog
{
public:
breed( string color, string size)
{
_color = color;
setDogSize(size);
}
string getColor()
{
return _color;
}
// virtual function redefined
void setEars(string length, string type)
{
_earLength = length;
_earType = type;
}
protected:
string _color, _earLength, _earType;
};
int main()
{
dog mongrel;
breed labrador("yellow", "large");
mongrel.setEars("pointy");
labrador.setEars("long", "floppy");
cout << "Cody is a " << labrador.getColor() << " labrador" << endl;
}