OVH Cloud OVH Cloud

Déclarations.

2 réponses
Avatar
Frédéri MIAILLE
Comment fait-on pour déclarer des classes ?
Je veux dire lorsque je souhaite utiliser une instantiation de classe avant
qu'elle n'ait été déclarée, comment dois-je m'y prendre ?

Exemple :

void FunctionOne(T &);

class T
{
int a;
int b;
char *pC;
};


--
Frédéri MIAILLE
fr.comp.lang.c
fr.comp.lang.c++
fr.comp.os.ms-windows.programmation
fr.comp.graphisme.programmation

2 réponses

Avatar
Vincent Richard

Comment fait-on pour déclarer des classes ?
Je veux dire lorsque je souhaite utiliser une instantiation de classe
avant qu'elle n'ait été déclarée, comment dois-je m'y prendre ?

Exemple :

void FunctionOne(T &);

class T
{
int a;
int b;
char *pC;
};


Il suffit de déclarer le type de T avant :

class T;

void FunctionOne(T &);

class T // déclaration complète
{
int a;
int b;
char *pC;
};

Par contre, ça ne fonctionne pas si tu veux accéder à des membres de T
avant qu'elle n'est été déclarée complètement, évidemment...

Vincent

--
SL> Au fait elle est mieux ma signature maintenant ?
Oui. T'enlève encore les conneries que t'as écrit dedans et c'est bon.
-+- JB in <http://www.le-gnu.net> : Le neuneuttoyage par le vide -+-

Avatar
Frédéri MIAILLE
class T;
Marche po !


void FunctionOne(T &);

class T // déclaration complète
{
int a;
int b;
char *pC;
};

Par contre, ça ne fonctionne pas si tu veux accéder à des membres de T
avant qu'elle n'est été déclarée complètement, évidemment...
Ah, c'était donc ça.


Merci.

--
Frédéri MIAILLE
fr.comp.lang.c
fr.comp.lang.c++
fr.comp.graphisme.programmation
fr.comp.os.ms-windows.programmation