标签: c++
可以使用引用来实现函数覆盖吗? 我可以有一个指向派生类对象的基类引用,然后获得后期绑定的功能吗?
答案 0 :(得分:6)
是的,但多态性不像Java那样在某些语言中是自动的。您必须在基类中声明函数virtual。
virtual
答案 1 :(得分:1)
是。原因是,在C ++中,派生类对象包含一个指向记录的隐藏指针,该记录详细说明了对象的实际类型。即使引用绑定了相关对象,指针和记录也都会保留。
这假设,正如@Simon观察到的那样,您已在基类中声明了虚函数。 (否则,所需的隐藏指针不存在。)