我在 ksql.h 中的枚举中添加了一个新值 (NULL_IS_NOT_NIL)
enum
{
PKEY = 0x000001,
NONCOLUMN = 0x000010,
EXPRESSION = 0x000010,
INSERTONLY = 0x000100,
NUMERIC = 0x001000,
NULL_IS_NOT_NIL = 0x010000,
MAXLEN_TABLENAME = 50
};
不幸的是,这是:
Row.SetExtras ("COMMENT2", KROW::NULL_IS_NOT_NIL);
抛出错误。
db.cpp:7727: error: âNULL_IS_NOT_NILâ was not declared in this scope
另一方面
Row.SetExtras ("COMMENT2", 0x010000);
和
Row.SetExtras (vendor_id, KROW::NUMERIC);
两者都工作正常并且不会抛出错误。现在我可以通过用 0x010000 替换 NULL_IS_NOT_NIL 来解决问题,但这是个坏主意。我收到此错误是有原因的吗?我错过了一些明显的东西吗?
最佳答案
您已经在头文件中进行了更改,但它们并未反射(reflect)在您的项目中。如评论中所述,原因是未将其推送到正确的文件夹。
关于c++ - 错误 : enum was not declared in this scope,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11230737/