begin process at 2012 05 28 22:39:55
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Constructeur qui ne fonctionne pas...


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

Constructeur qui ne fonctionne pas...

vendredi 12 août 2005 à 17:18:11 | Constructeur qui ne fonctionne pas...

Alcantornet

Bonjour,

J'ai fait une classe mais mon constructeur ne fonctionne pas ??

class obj_line{
    public:
    
    bool isalive;
    float yspeed,zspeed;
    GLuint len;
    GLfloat x,y,z;
    obj_sign * sign;

    // Constructeur
    obj_line(){
       isalive=0;
       system("pause");
    }
};

Est-ce que qqun pourrait m'aider svp.

vendredi 12 août 2005 à 17:20:06 | Re : Constructeur qui ne fonctionne pas...

buno

Administrateur CodeS-SourceS
Pourquoi dis-tu qu'il ne fonctionne pas?
Difficile de juger avec ce que tu nous montre...
Un exemple de code serait le bien venu...

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
vendredi 12 août 2005 à 17:24:43 | Re : Constructeur qui ne fonctionne pas...

Alcantornet

Voilà un peu + de code...

class obj_line{
    public:
    
    bool isalive;
    float yspeed,zspeed;
    GLuint len;
    GLfloat x,y,z;
    obj_sign * sign;

    // Constructeur
    obj_line(){
       isalive=0;
       system("pause");
    }
};

int NbLines          = 100;
obj_line * lines;

int main(int argc,char **argv){ 
   
    // Allocation de mémoire
    lines = (obj_line *)malloc(sizeof(obj_line)*NbLines);
   
}

(Pour info je travaille avec Dev-cpp)

vendredi 12 août 2005 à 17:32:44 | Re : Constructeur qui ne fonctionne pas...

buno

Administrateur CodeS-SourceS
Réponse acceptée !

lines = new obj_lines();

Tu ne peux pas faire un malloc dans ce cas...

sinon, tu peux faire:

 obj_lines lines;

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...

vendredi 12 août 2005 à 17:46:20 | Re : Constructeur qui ne fonctionne pas...

Alcantornet

Ok, merci beaucoup pour ton aide rapide.


samedi 13 août 2005 à 01:05:20 | Re : Constructeur qui ne fonctionne pas...

magic_Nono

Membre Club
oui, malloc n'appelle pas de constructeurs
new fait un malloc et appelle le constructeur

exemple faisant cohabiter les 2:

un tableau de pointeurs dont les elts sont créés par new

exemple en pratique: liste de chaines:

cf BLBString ds quasi toutes mes sources

___________________________________________________________
Magicalement
Nono
samedi 13 août 2005 à 11:33:47 | Re : Constructeur qui ne fonctionne pas...

steve_clamage

Tu peux aussi allouer un pointeur sans construire avec new, utilisant ainsi l'allocateur par défaut du C++ qui est spécifié plus performant que malloc du C. Bref dans tout les cas c'est mieux d'utiliser new en C++, vu qu'on est en C++.

template <typename Type>
inline Type * alloc(size_t size) { return reinterpret_cast<Type *>(new char[sizeof(Type) * size]); }

obj_line * o = alloc<obj_line>(10); // pas d'appel du constructeur


Pour les conteneurs STL, il est possible d'utiliser std::malloc_alloc, un allocateur construit sur malloc/free, cette possibilité est offerte uniquement dans le but de pouvoir utiliser certaines extensions du C permetttant notament de detecter les fuites et basées autour de malloc.


Cette discussion est classée dans : fonctionne, obj, line, constructeur, isalive


Répondre à ce message

Sujets en rapport avec ce message

DLL en C++, svp :( [ par NitRic ] Ca fait 4 jours que j'essaie de créée une simple DLL qui ne fait afficher qu'un simple MessageBox et ca ne fonctionne pas... :\Voici mon code au compl Exemple de EnumPrinters (qui fonctionne) en C++ [ par nico ] Je voudrais que mon programme puisse détecter l'imprimante par défaut utilisée par mon PC. Pour ce faire j'ai trouvé la fonction "EnumPrinters". Le pr inp et outp [ par eric ] J'ai un problème avec ces deux fonctions.Voici les messages que j'obtiens à la compilation:bmp.obj : error LNK2001: unresolved external symbol _outpbm probleme de link [ par jacky66 ] je debute en c++ et en compilant mon prg je tombe sur des erreurs de link :IsieLink.obj : error LNK2001: unresolved external symbol "void __cdecl Dump Maudit Glut!!! [ par Budweiser ] Eh oui encore moi!! (décidement!)Si vous me répondez je vous embêtrai plus c'est promis!!Après avoir résolu mon pb de Glut32.lib j'en ai maintenant un client / serveur en c [ par skysee ] Bonjour,J'ai programmer un serveur en c sous windows avec visual c++ 6.Je n'ai aucune erreur de compilation mais quand je build, le message suivant ap obj 3ds dans openGL [ par Sylfix ] Slt tout le monde,j'aimerais savoir comment importer un objet 3d (si possible fait avec 3ds) dans OpenGLQqn peut m'aider please, c urgent ! rapatriement de fichier txt via ftp : pt 'problème [ par jimtruand ] salut!si quelqu'un peut m'aider à résoudre mon problème?qd je link mon programme j'ai les erreurs suivantes:fusion10.obj : error LNK2001: unresolved Les joies de la dev' sous vc++... [ par rudyg ] La situation:Un projet Objet W32 avec le stdafx.h qui inclut windows.hLe souhait:Utiliser une fonction necessitant l'inclusion de afxwin.hLe probleme: Conversion VB -> C++ !!! [ par Dorgendubal ] Bonjour à tous,alors là j'ai un probleme de taille. Celui qui trouve la solution je lui tire mon chapeau (et le remercie) ... j'ai cherché des heures


Nos sponsors


Sondage...

Comparez les prix

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 : 0,437 sec (4)

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