Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2916 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  probleme declaration operateur new

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

probleme declaration operateur new

n°709017
vince_223
Posté le 26-04-2004 à 19:00:28  profilanswer
 

Hello
 
voila je fait ca :


Histo<T> *tabhisto;      
tabhisto=new Histo<T>[reg_max+1](nbc,C1,C2,C3);


 
et visual me sort ca :  
 

error C2075 : 'Target of operator new()' : l'initialisation d'un tableau necessite des accolades ouvrantes.


 
 
Je ne comprend cette erreur . quelqu'un peut me dire ?


Message édité par vince_223 le 26-04-2004 à 19:01:39
mood
Publicité
Posté le 26-04-2004 à 19:00:28  profilanswer
 

n°709018
Taz
bisounours-codeur
Posté le 26-04-2004 à 19:03:25  profilanswer
 

ben ouais, avec un new[], tu peux pas initialiser les éléments. le constructeur par défaut est utilisé.
 
déjà, utilise un std::vector< Histo<T> >

n°709020
vince_223
Posté le 26-04-2004 à 19:06:55  profilanswer
 

Je doit etre fatigué,
 
comment utilise tu ton vector<histo<T>> ?

n°709024
Taz
bisounours-codeur
Posté le 26-04-2004 à 19:12:45  profilanswer
 

avec les espaces déjà  :o
comment ? http://www.sgi.com/tech/stl/Vector.html

n°709436
vince_223
Posté le 27-04-2004 à 10:51:27  profilanswer
 

Le probleme c'est que je peux pas modifier le type par un vector. Ca me ferait reecrire toute la classe.
 
je dois adapter un projet linux sous windows, et j'ai pas envie de me retaper toutes les classes (environ 25 classes relativement consequente)
 
si je fait un truc dans le genre
 

Code :
  1. Histo<T> *tabhisto;
  2. for(int i=0;i<reg_max+1;i++)
  3.   tabhisto[i]=new Histo<T>(nbc,C1,C2,C3);

 
 
a la place de  
 

Code :
  1. Histo<T> *tabhisto;
  2. tabhisto=new Histo<T>[reg_max+1](nbc,C1,C2,C3);


 
 
c correct ou pas (je peux pas tester pour l'instant.

n°709549
Taz
bisounours-codeur
Posté le 27-04-2004 à 11:52:28  profilanswer
 

non plus

n°709561
vince_223
Posté le 27-04-2004 à 12:00:13  profilanswer
 

pkoi ? c le meme probleme ? ( g pa tout compris alors )

n°709562
Taz
bisounours-codeur
Posté le 27-04-2004 à 12:04:46  profilanswer
 

que si tu utilisais std::vector il existerait pas

n°709564
vince_223
Posté le 27-04-2004 à 12:06:05  profilanswer
 

bon et si je fait un constructeur par defaut et je fait un
 
Histo<T> *tabhisto;
tabhisto=new Histo<T>[reg_max+1]();
for(int i=0 ; i< reg_max+1 ; i++)
 tabhisto[i].set_values(nbc,C1,C2,C3);
 
et creant une methode set_values.
c'est nettement moins rapide mais ca fonctionnne


Message édité par vince_223 le 27-04-2004 à 12:06:26

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  probleme declaration operateur new

 

Sujets relatifs
Problème de trigger (BdD et trigger présents)[Borland c++ builder 5] problème liste de suivis
[Probleme] _inp & _outpprobleme de nom décoré DLL C (résolu)
Probléme programmation PHP pour enregistremetn dasn deux tables MySQL[C] Probleme avec lecture fichier
Problème de sélection avec VB pour calculer l'écart type[c++] probleme de comparaison de type d'objets derivés
besoin d'aide pour la fonction socket probleme avec freeProblème de compilation
Plus de sujets relatifs à : probleme declaration operateur new


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR