C++ - Какой результат компиляции и выполнения следующей программы? | ProgHub
Какой результат компиляции и выполнения следующей программы?
#include <iostream> 
#include <string> 
 
struct A { 
 void exec() { 
   std::cout << "Hello "; 
 } 
}; 
 
struct B { 
 void exec() {} 
}; 
 
struct C : virtual A, virtual B { 
 void exec() { 
   A::exec(); 
   std::cout << "World\n"; 
 } 
}; 
 
int main() { 
 A* a = new C(); 
 B* b = new C(); 
 C* c = new C(); 
 a->exec(); 
 b->exec(); 
 c->exec(); 
} 
Произойдёт ошибка компиляции
Hello World
World
Hello Hello World
Hello World
Hello World
Hello World
Hello World
Ничего выведено не будет