ref-quilifier是否仅用于重载sakes?我期待
struct A
{
int a;
A() : a(10){ }
void foo() &{ a++; std::cout << this -> a << std::endl; }
};
int main ()
{
A a;
a.foo();
std::cout << a.a << std::endl;
}
和
struct A
{
int a;
A() : a(10){ }
void foo(){ a++; std::cout << this -> a << std::endl; }
};
int main ()
{
A a;
a.foo();
std::cout << a.a << std::endl;
}
打印不同的结果,因为在第一种情况下,我们通过引用传递隐式对象参数,而在第二种情况下,我们依次通过值传递它。