Accueil>Tests>Questions>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".
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 43 fois
Modifier
1
Évaluations de la communautéPersonne n'a encore évalué cette question, soyez le premier !
2
L'opérateur + a été défini pour les objets Complexe grâce à une surcharge interne.5
Quelle affirmation concernant les constructeurs est fausse ?1
Quelle est la visibilité par défaut des membres de classe en C++?1
Écrire une fonction C++ qui incrémente son paramètre d'entrée et affiche le résultat.4
Écrire une classe C++ avec un constructeur qui prend deux arguments.2
Quel type utiliser pour représenter une liste de données dont la longueur peut changer ?3
Comment distinguer un paramètre d'une méthode d'un attribut de la classe en C++