重定义的符号的错误
typedef std::basic_string< unsigned char > Buffer;///这个定义在一个单独的头文件中
今天在写程序时,在别的cpp文件中还没有什么,只要在某个特定的cpp文件中使用Buffer这个类型,就会报错
1>xgd.lib(xgd.dll) : error LNK2005: "public: unsigned char const * __thiscall std::basic_string<unsigned char,struct std::char_traits<unsigned char>,class std::allocator<unsigned char> >::c_str(void)const " (?c_str@?$basic_string@EU?$char_traits@E@std@@V?$allocator@E@2@@std@@QBEPBEXZ) 已经在 registerMenu_t.obj 中定义
1>xgd.lib(xgd.dll) : error LNK2005: "public: __thiscall std::basic_string<unsigned char,struct std::char_traits<unsigned char>,class std::allocator<unsigned char> >::~basic_string<unsigned char,struct std::char_traits<unsigned char>,class std::allocator<unsigned char> >(void)" (??1?$basic_string@EU?$char_traits@E@std@@V?$allocator@E@2@@std@@QAE@XZ) 已经在 registerMenu_t.obj 中定义
1>..\bin.gb\stard.exe : fatal error LNK1169: 找到一个或多个多重定义的符号
很是奇怪,请问有何解决办法?