-
1 std::max找不到定义
"max: 不是“std”的成员"// 解决办法: #include <algorithm>
-
2 无法从"wchar_t*"转换为"char*"
工程如果设置成unicode的话,根据下面wchar_t就是2Byets类型,当然与char不相容(多字节字符集即窄字节)#ifdef _UNICODE\ typedef wchar_t TCHAR ;\ #else\ typedef char TCHAR;\ #endif
// 解决办法: 属性 --> 常规 --> 字符集 --> Unicode切换成多字节字符集
-
3 "无法解析的外部符号 main MSVCRT.lib"
这是个工程配置问题,也是链接问题
缘由背景:开源代码是个windows窗口程序,(WinMain()是windows窗口程序的入口点)而我用控制台来构建它,所以控制台的main入口与代码上的WinMain链接不上int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstanc, LPSTR lpCmdLine, int nShowCmd)
// 解决: 属性 --> 链接器 --> 子系统 --> console切换成Windows(窗口)
-
4 ffmpeg被舍弃的函数,报错
// 解决: 属性 --> 常规 --> SDL检测关闭
-
5 流输出时报错"错误C2679二进制“<<”: 没有找到接受“std::string”类型的右操作数的运算符(或没有可接受的转换)"
// A #include <string>
-
"# #error: The C++ Standard Library forbids macroizing keywords"
解决: 项目->属性->配置属性->C/C++->预处理器->预处理器定义中加入“_XKEYCHECK_H”