不能赋值:左键需要作为赋值的左操作数
Can not assign to this: lvalue required as left operand of assignment
class scope{
//...
scope* parent;
//...
public:
//...
void leavescope();
//...
};
void scope::leavescope(){
this = this->parent; // complains about this line
}
我正在尝试实现范围,但在离开范围并返回外部级别范围时遇到问题。
this
是prvalue或纯右值,不能修改,草稿C++标准部分9.3.2
这个指针说:
在非静态 (9.3( 成员函数的主体中,关键字 this 是一个 prvalue 表达式,其值是为其调用函数的对象的地址。[...]
目前尚不清楚您为什么要修改它。
相关文章:
- 需要左键作为赋值的左操作数?? 在链表中添加Add_End、删除和Delete_Front?
- 作为赋值(增加引用变量)C++的左操作数所需的左值
- C++ - 左操作数作为赋值的左操作数
- 当我尝试构建此程序时,出现此错误:需要左键作为赋值的左操作数
- 添加数组元素:需要左键作为赋值的左操作数
- 对条件表达式结果的赋值(其中第二个和第三个操作数是相同类型和值类别的变量)是否仍然存在?
- 在 c 程序中需要左操作数作为赋值的左操作数
- 基本类型变量的赋值计算序列,右操作数引发异常
- 需要左值作为赋值错误的左操作数通过 if 语句
- 在 C++ 中需要左键作为赋值错误的左操作数
- 错误:左值需要作为赋值的左操作数
- 强制函数仅作为赋值操作数调用
- Geany c++,错误为“赋值的左操作数需要左值”
- 运算符重载所需的左值作为赋值的左操作数
- 气泡排序中赋值c++的左操作数需要左值
- 错误:使用四进制和随机数生成器进行赋值时,左值需要作为左操作数
- 不能赋值:左键需要作为赋值的左操作数
- 错误:左值需要作为赋值 C++ 的左操作数
- 左值需要作为赋值的左操作数(while 循环)
- 左键需要作为赋值的左操作数?查看其他线程无济于事