bec*_*cko 5 c++ pointers reference
我有一个类,在这个类中,有一个函数,它将同一个类的另一个实例作为参数.在这个函数里面我需要做一些事情,但是只有传递的参数与当前的参数不同.以下代码是否正确执行此操作?
class Foo
{
void Foo::func(Foo &other)
{
if (this != &other)
// do stuff
}
}
Run Code Online (Sandbox Code Playgroud)
是的,(ptr == &ref)这是确定指针和引用是否指向同一对象的正确方法。(从技术上讲,如果operator&过载,它可能会失败,但这是一种不太可能发生的情况,而且作为该类的作者,您显然已经意识到了这种情况。)