Есть ли способ определить класс, который можно унаследовать, но не может принимать участие в ромбовидной иерархии?C++

Программы на C++. Форум разработчиков
Anonymous
Есть ли способ определить класс, который можно унаследовать, но не может принимать участие в ромбовидной иерархии?

Сообщение Anonymous »

Есть ли способ определить класс Foo в C++
так, чтобы
  • Я мог наследовать от него
  • Я не мог от него «бриллиантового наследования»
Т.е.

class Cat: public Foo{} // okay
class Dog: public Foo{} // okay
class Weird: public Cat, public Dog {} // I want this to throw a compiler error


Подробнее здесь: https://stackoverflow.com/questions/231 ... t-take-par

Вернуться в «C++»