这个错误很大可能是由 const 类型的变量调用了非const类型的函数。
例如:
class A
{
public:
int size() {// return somthing};
};
class B
{
public:
int getSize(const A& a)
{
// error. a是const类型,必须调用const function.
return a.size()
}
};
改为:
class A
{
public:
int size() const
{
// return something.
}
};
class B
{
public:
int getSize(const A& a)
{
// success
return a.size()
}
};
这样就没有错误了.
————————————————
版权声明:本文为优快云博主「帐前卒」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/cctt_1/article/details/7857605

本文详细解析了在C++中,当尝试从const类型的变量调用非const成员函数时可能出现的编译错误,并提供了正确的解决方案。通过将成员函数声明为const,可以避免此类错误,确保代码的正确性和效率。
4873

被折叠的 条评论
为什么被折叠?



