CPP
cpp
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
26
27
28
#include <iostream>
using namespace std;
//I changed class to struct to make everything public. The behavior should still be the same.
struct B{
virtual void disp(){
cout << "B display\n"; }
};
struct D1 : B{
void disp(){
cout << "D1 display\n"; }
};
struct D2 : D1{
void disp(){
cout << "D2 display\n"; }
};
template<typename T>
void test(const T& x){
cout << x << '\n';
x->disp();
}
auto br = [](){cout<<'\n';};
Enter to Rename, Shift+Enter to Preview
OUTPUT
Run