classe (C++)
class la parola chiave dichiara un tipo di classe o definisce un oggetto di tipo classe.
[template-spec] class [ms-decl-spec] [tag [: base-list ]]
{
member-list
} [declarators];
[ class ] tag declarators;
Parametri
template-spec
Specifiche facoltative del modello.Per ulteriori informazioni, vedere Specifiche del modello.class
Parola chiave class.ms-decl-spec
Specifica una classe di archiviazione.Per ulteriori informazioni, fare riferimento a __declspec parola chiave.tag
Il nome del tipo fornito alla classe.Il tag diventa una parola riservata nella classe.il tag è facoltativo.Se omesso, una classe anonima è definita.Per ulteriori informazioni, vedere Tipi anonimi della classe.base-list
L'elenco facoltativo di classi o di strutture questa classe derivare i relativi membri da.Per ulteriori informazioni, vedere Classi di base.Ogni nome della classe o di struttura di base può essere preceduto da un identificatore di accesso (pubblico, privato, protetto) e virtuale parola chiave.Vedere la tabella di accesso al membro in Controllo dell'accesso ai membri della classe per ulteriori informazioni.member-list
Elenco dei membri della classe.Per ulteriori informazioni, fare riferimento a Membri di classe.declarators
Elenco dei dichiaratori che specifica i nomi di uno o più istanze del tipo della classe.I dichiaratori possono includere gli elenchi di inizializzatori se tutti i membri dati della classe sono public.È più comune nelle strutture, i cui membri dati sono public per impostazione predefinita, nelle classi.Per ulteriori informazioni, vedere Cenni preliminari sui dichiaratori.
Note
Per ulteriori informazioni sulle classi fare riferimento in genere a uno dei seguenti argomenti:
Per informazioni sulle classi gestite e strutture, vedere Classi e strutture
Esempio
// 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;
}