[C++] truc = new int[200] ça initialise à zéro en standard...

ça initialise à zéro en standard... [C++] truc = new int[200] - Programmation

Marsh Posté le 29-06-2001 à 17:41:03    

ou c'est propre à GNU ?  
ça fait partie de la norme ou pas ?
 
(z'avez vu, je me permets même de me soucier de la protabilité ! :D )

Reply

Marsh Posté le 29-06-2001 à 17:41:03   

Reply

Marsh Posté le 29-06-2001 à 19:10:34    

non, si t'as des 0, c'est de la chance car le constructeur par défaut des entiers ne fait rien.
en revanche, si tu fais:
vector<int> truc(200,0);
ça fera un vector de 200 ints initialisés à 0.


---------------
-----------------------
Reply

Marsh Posté le 29-06-2001 à 19:14:06    

merci master janos !
 
bon ben on va initialiser... :sweat:
 
quand à utiliser la STL, pour ce que je fais, c'est pas possible....

Reply

Marsh Posté le 29-06-2001 à 19:30:28    

même si tu ne peux pas utiliser les conteneurs de la STL, les algos génériques fonctionnent avec les array de type C:
 
#include <algorithm>
using namespace std;
 
int *truc=new int[200];
fill(truc, truc+200, 0);
 
et voilà!


---------------
-----------------------
Reply

Marsh Posté le 30-06-2001 à 02:40:13    

Un compilo qui initialise tout par defaut a zero (Comme le compilo C sur DEC Ultrix autrefois) ca donne de mauvaises habitudes. Le jour ou tu recompile avec un compilo qui initialise rien du tout (sur Sun par exemple), bonjour les bugs. (Oui, c'est du vecu :D)
A+,

Reply

Marsh Posté le 02-07-2001 à 16:12:26    

gilou > d'ou ma question de programmeur consciencieux... :D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed