这是一个说明我的问题的简化示例.以下给出了:错误C2065:'状态':未声明的标识符
myclass.h
class MyClass
{
enum class State { IDLE, WALK_RIGHT, WALK_LEFT };
void SetState(State);
}
Run Code Online (Sandbox Code Playgroud)
myclass.cpp
#include "myclass.h"
void SetState(State state)
{
//...
}
Run Code Online (Sandbox Code Playgroud)
知道这里有什么问题吗?提前致谢!
这不是您在类定义之外定义成员函数的方式.你需要
void MyClass::SetState(State state){
// ^^^^^^^^^
}
Run Code Online (Sandbox Code Playgroud)
编译器会State在MyClass看到MyClass::SetState并知道这是一个成员函数定义之后知道要查找,所以你不必MyClass::State在这里写.
| 归档时间: |
|
| 查看次数: |
261 次 |
| 最近记录: |