Facile
Que renvoie le code suivant ?
class Complex {
public:
Complex(double x, double y) : x(x), y(y) {}
double getX() const {return x;}
double getY() const {return y;}
Complex operator+(Complex z2);
private:
double x;
double y;
};
Complex Complex::operator+(Complex z2) {
return Complex(x+z2.getX(), y+z2.getY());
}
int main() {
Complex z1(1, 1);
Complex z2(2, 2);
Complex z3 = z1+z2;
cout << z1.getX() << ',' << z1.getY() << endl;
cout << z2.getX() << ',' << z2.getY() << endl;
cout << z3.getX() << ',' << z3.getY() << endl;
return 0;
}
Auteur: SamuelStatut : PubliéeQuestion passée 239 fois
Modifier
1
Évaluations de la communautéPersonne n'a encore évalué cette question, soyez le premier !
Questions similairesPlus de questions sur C++
3
Quelle affirmation concernant les constructeurs est fausse ?3
Écrire une classe C++ avec un constructeur qui prend deux arguments.1
L'opérateur + a été défini pour les objets Complexe grâce à une surcharge interne.1
Écrire un programme C++ qui utilise des variables statiques.1
Que fait le code suivant ?
class A { public: virtual void hello() {cout << "A" << endl;} };
class B : public A { public: void hello() {cout << "B" << endl;} };
void meet_value(A a1, A a2) { a1.hello(); a2.hello(); }
void meet_reference(A& a1, A& a2) { a1.hello(); a2.hello(); }
int main() { B b; A a; meet_value(a, b); meet_reference(a, b); return 0; }
Answer : "AAAB".