int main(){
Test obj1(a,b,c);
Test obj2(d,e,f);
&obj1=&obj2;//This line wont work saying lvalue required on left side
}
Run Code Online (Sandbox Code Playgroud)
我可以做什么来纠正这个错误?我想将 obj2 的地址存储到 obj1 中,以便它们的成员变量变得相同(a=d,b=e,c=f),当我更改 obj1 的成员变量时,它也会在 obj2 中更改。
你正在做的事情就像是42 = 64。这个不成立。如果要存储对象的地址,可以使用指针对象:
Test obj1;
Test obj2;
Test * pobj = &obj1; // pointing to obj1
pobj = &obj2; // pointing to obj2
Run Code Online (Sandbox Code Playgroud)
您还可以使用引用来完成类似的操作,但由于您提到您希望能够在声明后重新绑定到不同的对象,因此指针更适合您的用例。
| 归档时间: |
|
| 查看次数: |
963 次 |
| 最近记录: |