标签: c++ oop overloading
我正在学习C ++。在我正在做的课程中,我们现在已经介绍了有关课程的部分。
我现在知道函数可以重载;给定不同类型的参数,可以进行不同的实现。但是,在成员函数的情况下,调用者类型也成为函数的一部分。是否有任何方法可以使用函数重载来选择适当的实现,具体取决于调用者对象是否为 const ?或者,如果它是左值与右值?
因此,如果有一个类Foo,是否有办法让myFoo.bar()具有不同的实现,具体取决于myFoo是 const ,还是传递一个右值,例如在Foo{}.bar()?
Foo
myFoo.bar()
myFoo
Foo{}.bar()