What is wrong in the following code?
#include <iostream>
class Base
{
public:
Base() {};
virtual ~Base() {};
};
class Derived : protected Base
{
public:
virtual ~Derived() {};
};
int main()
{
Base *pb = new Derived();
return 0;
}
#include <iostream>
class Base
{
public:
Base() {};
virtual ~Base() {};
};
class Derived : protected Base
{
public:
virtual ~Derived() {};
};
int main()
{
Base *pb = new Derived();
return 0;
}
There is nothing wrong
One cannot have a ‘Base’ pointer to ‘Derived’ since it is not derived publicly
One need a derived class pointer to point to a derived class
One required to code a constructor for Derived
Hãy suy nghĩ và trả lời câu hỏi trước khi xem đáp án
Tổng hợp câu hỏi trắc nghiệm lập trình C/C++ có đáp án và lời giải đầy đủ nhằm giúp các bạn dễ dàng ôn tập lại toàn bộ các kiến thức.