我有一个具有此功能的"Fan"类:
string getName();
Run Code Online (Sandbox Code Playgroud)
我想在课外的另一个函数中使用它:
string print(const Fan& fan) {
std::stringstream ss;
ss << "Fan : " << fan.getName() ;
return ss.str();
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
..\mtm_ex4.cpp:37:52:错误:传递丢弃限定符的
'const mtm::Fan''this'参数'std::string mtm::Fan::getName()'[-fpermissive]
这是为什么?!
更新:
当我将其更改为:
string getName() const;
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
未定义的引用
mtm::Fan::getName() const
您正试图在const对象上调用非const成员函数.只需更改功能:
string getName() const;
Run Code Online (Sandbox Code Playgroud)
我会说这不是一个非常具有描述性的错误信息.
编辑:您需要const在两个位置添加,类中的声明和源中的定义.
| 归档时间: |
|
| 查看次数: |
2115 次 |
| 最近记录: |