ormpp icon indicating copy to clipboard operation
ormpp copied to clipboard

error C2653: “ormpp_mysql”: 不是类或命名空间名称

Open AriJing opened this issue 8 months ago • 1 comments

环境: Windows 11 VS 2022 C++20 下边是我写的测试代码: ` #define NOMINMAX

#include <Windows.h> #include #include <ormpp/dbng.hpp> #include <ormpp/mysql.hpp>

using namespace ormpp;

struct TerminalEntity { int id; std::wstring name; std::wstring ip_v4; std::wstring mac; std::wstring cpu_sn; std::wstring board_uuid; }; REGISTER_AUTO_KEY(TerminalEntity, id) REGISTER_CONFLICT_KEY(TerminalEntiy, mac) REFLECTION(TerminalEntity, id, name, ip_v4, mac, cpu_sn, board_uuid)

int main() { dbng mysql; if (mysql.connect("127.0.0.1", "user", "e_User", "eshow")) std::cout << "Connected to Mysql" << std::endl; system("pause"); mysql.disconnect(); }

编译报错信息如下:ormpp_test.cpp 1>D:\DevTools\ormpp\iguana\detail\fast_float.h(1,1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 1>D:\DevTools\ormpp\ormpp\mysql.hpp(19,14): error C2653: “ormpp_mysql”: 不是类或命名空间名称 1>D:\DevTools\ormpp\ormpp\mysql.hpp(19,27): error C2061: 语法错误: 标识符“blob” 1>D:\DevTools\ormpp\ormpp\mysql.hpp(148,45): error C2065: “MYSQL_BIND”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(148,38): error C2923: "std::vector": "MYSQL_BIND" 不是参数 "Ty" 的有效 模板 类型参数 1>D:\DevTools\ormpp\ormpp\mysql.hpp(148,38): error C2976: “std::vector'”: 模板 参数太少 1>D:\DevTools\ormpp\ormpp\mysql.hpp(148,58): error C2955: “std::vector”: 使用 类 模板 需要 模板 参数列表 1>D:\DevTools\ormpp\ormpp\mysql.hpp(203,23): error C2061: 语法错误: 标识符“MYSQL_BIND” 1>D:\DevTools\ormpp\ormpp\mysql.hpp(251,18): error C2061: 语法错误: 标识符“MYSQL_BIND” 1>D:\DevTools\ormpp\ormpp\mysql.hpp(1102,20): error C2061: 语法错误: 标识符“MYSQL_STMT” 1>D:\DevTools\ormpp\ormpp\mysql.hpp(1113,16): error C2143: 语法错误: 缺少“;”(在“”的前面) 1>D:\DevTools\ormpp\ormpp\mysql.hpp(1113,5): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int 1>D:\DevTools\ormpp\ormpp\mysql.hpp(1113,32): error C2238: 意外的标记位于“;”之前 1>D:\DevTools\ormpp\ormpp\mysql.hpp(1117,9): error C2143: 语法错误: 缺少“;”(在“”的前面) 1>D:\DevTools\ormpp\ormpp\mysql.hpp(1117,3): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int 1>D:\DevTools\ormpp\ormpp\mysql.hpp(1117,24): error C2238: 意外的标记位于“;”之前 1>D:\DevTools\ormpp\ormpp\mysql.hpp(1118,14): error C2143: 语法错误: 缺少“;”(在“*”的前面) 1>D:\DevTools\ormpp\ormpp\mysql.hpp(1118,3): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int 1>D:\DevTools\ormpp\ormpp\mysql.hpp(1118,30): error C2238: 意外的标记位于“;”之前 1>D:\DevTools\ormpp\ormpp\mysql.hpp(43,9): error C2065: “con”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(43,9): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(44,19): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(47,5): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(47,12): error C3861: “mysql_init”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(48,10): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(48,10): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(57,25): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(57,25): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(57,31): error C3861: “MYSQL_OPT_CONNECT_TIMEOUT”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(58,36): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(64,19): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(64,25): error C3861: “MYSQL_OPT_RECONNECT”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(65,19): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(65,25): error C3861: “MYSQL_SET_CHARSET_NAME”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(67,21): error C2065: “mysql_real_connect”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(67,21): error C3861: “mysql_real_connect”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(68,34): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(44,19): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(47,5): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(57,31): error C2065: “MYSQL_OPT_CONNECT_TIMEOUT”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(58,36): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(64,19): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(64,25): error C2065: “MYSQL_OPT_RECONNECT”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(65,19): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(65,25): error C2065: “MYSQL_SET_CHARSET_NAME”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(68,34): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(79,9): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(79,9): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(80,19): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(81,7): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(80,19): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(81,7): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(94,21): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(95,34): error C3861: “con_”: 找不到标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(94,21): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(95,34): error C2065: “con_”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(150,5): error C2065: “MYSQL_BIND”: 未声明的标识符 1>D:\DevTools\ormpp\ormpp\mysql.hpp(150,16): error C3878: 语法错误:“expression”后出现意外标记“param” 1>D:\DevTools\ormpp\ormpp\mysql.hpp(150,16): message : 已跳过错误恢复:“标识符 = {” 1>D:\DevTools\ormpp\ormpp\mysql.hpp(1121,1): error C1907: 无法从以前的错误中恢复;正在停止编译 1>已完成生成项目“ormpp_test.vcxproj”的操作 - 失败。 ========== 生成: 0 成功,1 失败,0 最新,0 已跳过 ========== ========== 生成 于 16:34 完成,耗时 03.425 秒 ========== `

AriJing avatar Jun 26 '24 08:06 AriJing