美文网首页
g++报错: const对象调用非const成员函数

g++报错: const对象调用非const成员函数

作者: Myth52125 | 来源:发表于2017-09-06 01:13 被阅读0次

原因:当一个const对象调用其非const成员函数时,编译器不能保证其函数不修改对象内部数据,因此回报错。
解决:将函数声明为const

报错

在写一个string简单的类时,想把该类主要用于函数传递。
因此免不了使用const &这样传进去的函数,就不能使用非const的成员函数。

如上图,size()函数不是const函数,而传入参数是const &
对一个const对象,调用其非const函数,报错方式如上图所示。

需要.size().c_str()都是const的函数。

如果成员函数不会改变对象内部状态,那就声明为const对象。

相关文章

网友评论

      本文标题:g++报错: const对象调用非const成员函数

      本文链接:https://www.haomeiwen.com/subject/iyqmjxtx.html