begin process at 2008 08 20 14:33:12
1 228 884 membres
250 nouveaux aujourd'hui
14 258 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : fonction qui initialize une instance de classe sans allocation dynamique [ Divers / Général ] (mmaximum)

fonction qui initialize une instance de classe sans allocation dynamique le 15/07/2008 13:50:52

mmaximum
Bonjour à tous,

J'ai un petit problème que je n'arrive pas à résoudre:

On considère une classe ClassA et une fonction FunctionA.
Le constructeur de ClassA à besoin de 2 arguments : 2 entiers.
Le prototype de FunctionA est le suivant:

ClassA*  FunctionA(void);

FunctionA doit initialisé une instance de ClassA sans utiliser d'allocation dynamique,
puis, ensuite, doit retourner un pointeur sur l'instance crée.

Comment-faire pour coder ca en c/c++???

Merci d'avance, mmaximum

Re : fonction qui initialize une instance de classe sans allocation dynamique le 15/07/2008 17:00:16

juju12

tu peux faire ClassA *pClass=new ClassA(i1,i2);
mais c'est une allocation dynamique.
D'ailleurs pourquoi tu ne veux pas utiliser d'allocation dynamique?


Re : fonction qui initialize une instance de classe sans allocation dynamique le 15/07/2008 18:12:08

Lucky92
Est-ce que cela répond à ton besoin ?

classA * functionA()
{
    static classA A;
    A = classA( 15 , 2 );
    return & A;
}

Re : fonction qui initialize une instance de classe sans allocation dynamique le 15/07/2008 18:55:27

mmaximum
Petit problème, la fonction retrourne toujours le même pointeur, ca ne crée qu'une unique instance et je voudrai qu'à chaque appelle de FonctionA ca crée une nouvelle instance de ClassA.
j'ai trouvé une autre solution un peu plus longue.
Sinon pour l'allocation dynamique, c'est seulement en dernier retour car je suis sur à 99% qu'il y aura des fuites mémoires.

Merci quand même de m'avoir aidé!


Classé sous : fonction, instance, classe, classa, functiona

Participer à cet échange

Pub



Appels d'offres

CalendriCode

Août 2008
LMMJVSD
    123
45678910
11121314151617
18192021222324
25262728293031

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Boutique

Boutique de goodies CodeS-SourceS