#include <iostream>
using namespace std;
class A
{
public:
A()
{
value = 'A';
}
A(A const &)
{
value = 'A';
}
char value;
};
class B : public A
{
public:
B()
{
value = 'B';
}
B(B const &, bool = false)
{
value = 'B';
}
};
int main()
{
B b1;
B b2(b1);
cout << b1.value << endl;
cout << b2.value << endl;
return 0;
}
/* expected (but not desired) run-time
result
B
A
*/
End of Listing