Question du test C++ - Les bases

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".

Difficile

Que renvoie 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;
}
Auteur: SamuelStatut : PubliéeQuestion passée 30 fois
Modifier
1
Évaluations de la communautéPersonne n'a encore évalué cette question, soyez le premier !