Давайте представим ситуацию, когда у меня есть абстрактный класс с именем «Base» с виртуальным чистым методом с именем foo() и 2 дочерними (Inherited1 и Inherited2), которые оба реализуют этот метод по-своему. Теперь предположим, что одному из этих детей (Inherited1) нужен другой метод, называемый bar(), который не имеет смысла реализовывать в Inherited2.Есть ли способ передать абстрактный объект его ребенку?
В моем основных, я
Base * randomObject = new Inherited1();
Я не могу получить доступ к этому методу с использованием
random->bar();
Что я должен делать. Как я уже сказал, было бы бессмысленно реализовывать его в inherited2, поэтому я не могу просто добавить другой виртуальный метод в Base, или я должен?
'Base randomObject = new Inherited1();' ---, который почти наверняка не компилируется. Вы пишете C++ или Java? – Brian
извините забыл добавить указатель – asdfasdf
@Brian Он все равно не сможет назвать дочернюю функцию в Inherited1 таким образом – tier1