Re[2]: Динамический полиморфизм приперегрузке функций
От: dip_2000 Россия  
Дата: 16.07.07 09:15
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Методы getSelf в классах-потомках отличаются от метода getSelf класса Base возвращаемым типом — и, соответственно, не перегружают его, а скрывают (о чем компилятор наверняка пишет warning). Классы Derived1 и Derived2 не имеют перегруженного метода Base* getSelf(), и наследуют его от базового класса. Таким образом, в строчке, где возникает ошибка, всегда вызывается метод Base::getSelf.


Извините, но вы не правы. Это называется ковариантными типами возращаемых значений. С++ это поддерживает. В этом месте проблеммы нет.
(Компилятор ворнинга не выдает )
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.