我正在写一个 dll,它导出一个函数
extern "C"
__declspec(dllexport)
std::list<string> create() {
return std::list<string>();
}
编译器抱怨:
错误 C2526:“创建”:C 链接函数无法返回 C++ 类“std::list<_Ty>”
如果我删除外部“C”,导出的函数名称将是:?create@@YA?AV?$list@PAUanalyzer@@V?$allocator@PAUanalyzer@@@std@@@std@@XZ
我希望名称干净,所以我添加了 extern "C",现在它冲突了
还有其他方法可以获得干净的函数名称吗?
谢谢。