c++ - 在构造函数中将枚举作为参数传递

标签 c++ enums arguments

枚举在全局范围内声明如下,PSLGVertex::PSLGVertex() 构造函数提示最后一个参数“PSLGVertexType”不是类或命名空间

我在这里做错了什么?

enum PSLGVertexType {
REFLEX_VERTEX,
CONVEX_VERTEX,
MOVING_STEINER_VERTEX,
MULTI_STEINER_VERTEX,
RESTING_STEINER_VERTEX,
OTHER_VERTEX
};

构造函数

PSLGVertex::PSLGVertex() : mark(false), oriPosition(0, 0), speed(0, 0), 
startTime(0.0),firstin(NULL), firstout(NULL),type(PSLGVertexType::OTHER_VERTEX)

最佳答案

您正在使用 PSLGVertexType::,它告诉编译器 PSLGVertexType 是类/结构或命名空间,但两者都不是。

使用普通的OTHER_VERTEX

关于c++ - 在构造函数中将枚举作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19651626/

相关文章:

c++ - 为什么我的 ofstream 写入导致比预期更多的字节?

f# - 枚举与非成员歧视工会

java - 如何从枚举中提取所有值并将它们添加到 List<String>

c++ - 如何在 C 或 C++ 中使用未命名的函数参数

JavaScript - 灵活的参数

c++ - windows和linux差异: backslash and forward slash in c++

c++ - 与 std::chrono::system_clock/std::chrono::high_resolution_clock 的时差

c++ - 使用具有相同名称的(无作用域的)基类枚举初始化派生类枚举

powershell - PowerShell调用命令参数列表

c++ - 没有构造函数的实例与参数列表匹配——参数类型是 :