Используя чистые виртуальные методы для faux-интерфейсов в С++, что происходит, когда конкретный класс происходит от двух "интерфейсов", которые имеют идентичное объявление метода? например X
подклассы Iaaa
и Ibbb
и реализует метод virtual void setVisible(bool);
.
Имеет ли факт, что Iaaa
и Ibbb
не имеет тела метода, делает вещи проще/лучше, чем более классический сценарий наследования алмазов, и позволяет X::setVisible
быть реализацией как для Iaaa::setVisible
, так и Ibbb::setVisible
?
Я полагаю, что более С++-способ формулировки вопроса "что происходит, когда один класс использует MI для вывода из 2-х классов, которые имеют идентичные подписи для чистого виртуального метода".