По ссылке http://www.coolinterview.com/interview/10842/
Можно ли написать класс таким образом, чтобы от него не унаследовался какой-либо класс?
Из предложений, приведенных в приведенной выше ссылке, я попробовал приведенный ниже код
class A
{
A(){}
~A(){}
A(const A&);
A& operator=(const A&);
};
class B: public A
{
};
Приведенный выше код не вызывает ошибок.Если я пытаюсь создать экземпляр B, как показано ниже
int main()
{
B ob;
}
, тогда выдается ошибка
ошибка C2248: «A :: A»: невозможно получить доступ к закрытому члену, объявленному в классе «A»
Таким образом, наследование его разрешает, но создание экземпляров его не позволяет.
Есть ли другой способ заблокировать само наследование?