begin process at 2012 05 29 18:01:38
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

pb classe new et delete


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

pb classe new et delete

vendredi 27 février 2004 à 20:00:32 | pb classe new et delete

mat74


salut a ts
j'ai encore un pb avec les classes

comment je pourrai faire sa :

class teste
{
public:
int x;
void augmenter() {x++;}
void detruire(teste t)
{
if (x>50) delete t;
}
}

car la sa ne marche pas

cad que je creer un objet et au bout d'1 momment il se detruit tt seul .

merci d'avance

@+
vendredi 27 février 2004 à 22:18:57 | Re : pb classe new et delete

cosmobob

il faut que le truc que tu passes en parametres a ta fonction detruire soit un pointeur vers l'objet que tu veux detruire, et que celui la ait été crée en faisant new.
test* t = new test;


void detruire(teste* t)
{
if (x>50) delete t;
}

vendredi 27 février 2004 à 22:33:24 | Re : pb classe new et delete

mat74


et il ny a pas un moyen pr que la fonction marche pr tt les objet meme si ils ne sont pas encore declarer .
samedi 28 février 2004 à 00:28:28 | Re : pb classe new et delete

cosmobob

marcher pour des objets pas encore déclarés, ca veut rien dire ;) qu'entends tu par 'declarer' ?
samedi 28 février 2004 à 07:46:33 | Re : pb classe new et delete

mat74


et ben que si par exemple apres cette classe ds main je tape


teste test = new teste;

teste.augmenter();
teste.detruire(teste);

cette objet soit detruit qd x>50

et si je recommence avec un objet avec un nom totalement different ,l'objet soit qd meme detruit qd x>50
samedi 28 février 2004 à 15:15:50 | Re : pb classe new et delete

cosmobob

ben le truc ke jtai dit, le nom du parametre on s'en fout... (comme nimporte kel fonction le nom de son parametre n'a aucune importance!!!!!!) mais au fait mieux vaut que ta fonction detruire ne soit pas membre de la classe mais en soit juste une fonction amie. ds ta classe, déclare : friend void detruire(teste* t), et plus loin: (pas ds la classe)
void detruire(teste* t)
{
if (t->x > 50) delete t;
}

et la apres tu apeles detruire avec en parametre n'importe kel pointeur vers un objet de type teste.


Cette discussion est classée dans : pb, classe, void, delete, teste


Répondre à ce message

Sujets en rapport avec ce message

pb avec procedure [ par bidules ] bonjour,voila mon code(simplifier) :void affiche(int numero){cout }void main(){affiche(10);}et un message d'erreur apparait lors de la compilation Pb CreateThreadddd !!!!!!!!!!! [ par neub ] Salut à tous, j'ecris un module de visionnement d'image etje souhaiterai pouvoir stopper ma fonction OnPlay au moment voulu mais j'ai un pb a la creat Pb de cast ou instanceOf ??? [ par brunkass ] Voila mon pb :g une classe A dont heritent plusieurs autres classes B1,B2,B3...g créé un vecteur de pointeur vers des objets de type A, seulement derr petit pb de classe~~ [ par lerilcy ] Bijour a tous... J'ai declare une classe "CBloc" comme il faut (enfin je pense)class CBloc{...}et dans le code des procedures (bloc.cpp): le compilate Pb avec opérateur '=' sur classe ! [ par nicolas66 ] Bonjour @ tous !g un piti problème avec ma classe de complexes : toute la classe fonctionne ya pas de pb de ce coté là. Par contre, j'ai voulu définir classe et agregation... [ par Clonk ] bonjour,j'utilise plusieurs classes ayant des agregations (sous Borland).Disons en gros que si on a :class personne{private:int age;public:void affich pb classes avec tableau [ par JediMaster ] je voudrais crée une classe comme celle ci avec un tableau qui aurit sa taille qui varirais selon l'objet j' ai donc fait un construteurclass classe{ utiliser une fonction d'une lib C dans une classe c++ [ par snook ] Bonjour,j'aimerais savoir comment doit on proceder pourappeler une fonction d'une librairie ecrite en C dansmon programme C++?exemple: ma lib possede Pb de class [ par SfyLer ] Imaginons :class teste{public:void fonction();void fonction2();};int teste::fonction() {int a = 1;return 0;}int teste::fonction2() {//ici j'aimerais r pb insolutionable ! 'enfin pour moi. [ par yoda21 ] le programme est un projet en dut info 1ere année : c'est le mastermind.en gros ca déroule comme ca :void duel(void) { Instructions... }/*b


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,820 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales