cs_payen
Messages postés252Date d'inscriptionmercredi 25 octobre 2000StatutMembreDernière intervention 1 mai 2005
-
8 nov. 2002 à 15:15
cs_Kaid
Messages postés949Date d'inscriptionmardi 2 octobre 2001StatutMembreDernière intervention 8 juillet 2006
-
8 nov. 2002 à 15:34
salut a tous,
j'ai un petit probleme en C++: j'ai definit une class CImage, avec entre autre, un pointeur vers une variable de type char (char *nom_image;).
Pq un pointeur? Pour pouvoir recuperer le nom de l'image sur la ligne de commande ... Le pb, c que le compilateur compile correctement (VC++), mais qu'a l'execution, ca plante tout de suite : le constructeur n'est meme pas appele (ou en tous cas ca ne marche pas ...
class CImage
{
public:
int nbL, nbC;
unsigned char *image_memoire;
FILE *fichier_image;
char *nom_image;
...
int main(int argc, char *argv[])
{
CImage image;
image.nom_image = argv[1];
return 0;
}
avec ce code, ca plante. Quand, dans la classe je definis nom_image de la maniere suivante :
char nom_image[100],
ca passe, mais je ne peux plus le recuperer de la ligne de commande, puisque je ne peux pas mettre un pointeur dans un tableau de valeurs!!!
Quelqu'un aurait il une solution???
D'avance merci.
Ca marche, mais c'est pas "propre". Déjà tes attributs doivent être déclarés en proctected/private dans CImage et ensuite mieux vaut laisser à la classe l'initialisation.
class CImage:
{
public:
CImage(const char*arg)
{
strcpy(....);
}