我正在尝试比较两个枚举值,但在运行时它似乎总是评估为真。
Table.h 中的枚举声明,带有返回方法以获取状态值:
enum TableStatus { IDLE, SEATED, ORDERED, SERVED};
class Table
{
private:
...
TableStatus status; // current status
public:
...
TableStatus getTableStatus(void);
}
在我需要比较枚举值的部分中,我一直在尝试如下所示的条件:
if (tables[tableId]->getTableStatus() == TableStatus(SERVED))
我的问题是如何让这个逻辑起作用。将 Table 对象的状态与某个枚举值进行比较将正确评估。
编辑:包括 getTableStatus(void);
TableStatus Table::getTableStatus(void){
return status;
}