C++ 通过参考C++;编译错误
您好,我正在尝试通过函数解析一个类。我需要它是只读的,我没有必要编辑它。为此,我使用const参数通过引用传递对象。但我无法理解我做错了什么C++ 通过参考C++;编译错误,c++,C++,您好,我正在尝试通过函数解析一个类。我需要它是只读的,我没有必要编辑它。为此,我使用const参数通过引用传递对象。但我无法理解我做错了什么 void Container::push_Object(const Module& input){ cout << "Pushing object" << endl; input.print(); ...... } void容器::push_对象(const模块和输入){ cout不能对常量引用调
void Container::push_Object(const Module& input){
cout << "Pushing object" << endl;
input.print();
......
}
void容器::push_对象(const模块和输入){
cout不能对常量引用调用非常量函数
换成
void print() const;
要在常量对象上调用方法,它本身需要是const.change行
void print();
致:
它会起作用的。
这本质上意味着print()
内的this
指针是常量,因此print()
无法更改对象,从而保持其常量。确保不输入。print
(不带括号)在代码中的某个位置。复制并粘贴产生错误的准确行。将打印
声明为常量
function@NemanjaBoric这就是我得到的那一行。@AndyG是的,这会起作用,但这两个不是等价的吗?我想知道Error 15
是一些内部代码,还是仅仅是报告的第15个错误。
void print();
void print() const;