【发布时间】:2020-11-12 02:53:30
【问题描述】:
在g++中运行下面的代码会出现如下错误:
错误:将 'const A' 作为 'this' 参数传递会丢弃限定符 [-fpermissive]
struct A{
void f(){};
};
int main(){
const A a;
a.f();
return 0;
}
我们在哪里使用this?
fpermissive 意味着代码不符合要求。 标准在哪里声明这是一个错误?
【问题讨论】:
-
每次调用类方法时都使用
this。 -
如果您想要一个解决方案,请将
f限定为const->void f() const {}