今天我注意到“this”的类型有些奇怪。如果你有这样的事情:
class C {
void funcA() {
funcB(this);
}
void funcB(C obj) {
//do something
}
};
你当然会得到一个错误,因为 funcB() 需要一个对象,而 'this' 是一个指针。我不小心忘记了星号,但对错误消息感到惊讶,因为它说:
no matching function for call to 'C::funcB(C* const)'
当 funcA() 不是常量时,const 来自哪里?