引用能够用于实现函数重写吗?

3

引用可以用来实现函数重载吗?我能否拥有一个基类的引用指向一个派生类的对象,然后获取到晚绑定的特性吗?


一般来说,答案是肯定的。但是我假设你有一个具体的失败代码示例,否则你就不会问这个问题了。考虑将示例添加到问题中。 - thb
2个回答

6

是的,但是多态性并不像Java等某些语言那样自动。您必须在基类中声明函数为virtual


是的,指针也是这种情况。与许多其他语言相比,C++中的函数默认情况下不是虚拟的。 - Bhupesh Pant

1
是的。原因在于,在C++中,派生类对象包含一个指向记录对象实际类型的隐藏指针。即使引用绑定了相关对象,该指针和记录仍然存在。
这假设您已经在基类中声明了虚函数。否则,所需的隐藏指针不存在。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接