Bonjour,
J'ai un problème de constructeur. Tout fonctionne comme je m'y attends lorsque j'appelle le constructeur en spécifiant au moins un argument. Par contre cela ne compile pas lorsque je veux utiliser uniquement les arguments par défaut du constructeur.
Quelqu'un peut m'éclairer?
Voilà un code minimal qui compile lorsque j'appelle antenna ant(123); mais pas sans argument comme en dessous.
Erreur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 #include <iostream> #include <string> using namespace std; // Classe antenne class antenna { public: float x,y; string name; antenna(float x=-1e6,float y=-1e6,string name="no_name"); }; antenna::antenna(float x,float y,string name) { this->x=x; this->y=y; this->name=name; } int main() { antenna ant(); cout << ant.x <<endl; return 0; }
Qu'est ce que j'ai loupé?
Code : Sélectionner tout - Visualiser dans une fenêtre à part bug.cpp:23: error: request for member `x' in `ant', which is of non-class type `antenna ()()'
Keld.
Partager