1>------ 已启动生成: 项目: Utils, 配置: Release Win32 ------
1> UManger.cpp
1>D:\workspace\Utils\include\opencv2/core/ptr.inl.hpp(122): error C2440: “初始化”: 无法从“const char *”转换为“cv::Formatted *”
1> D:\workspace\Utils\include\opencv2/core/ptr.inl.hpp(122): note: 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
1> D:\workspace\Utils\include\opencv2/core/cvstd.inl.hpp(176): note: 参见对正在编译的函数 模板 实例化“cv::Ptr<cv::Formatted>::Ptr<const char>(Y *)”的引用
1> with
1> [
1> Y=const char
1> ]
1> UManger.cpp(159): note: 参见对正在编译的函数 模板 实例化“cv::Ptr<cv::Formatted>::Ptr<const char>(Y *)”的引用
1> with
1> [
1> Y=const char
1> ]
1>D:\workspace\Utils\include\opencv2/core/ptr.inl.hpp(122): error C2439: “cv::Ptr<cv::Formatted>::stored”: 未能初始化成员
1> D:\workspace\Utils\include\opencv2/core/cvstd.hpp(418): note: 参见“cv::Ptr<cv::Formatted>::stored”的声明
========== 生成: 成功 0 个,失败 1 个,最新 1 个,跳过 0 个 ==========
复制错误找说是字符集的问题,把配置属性里的字符集改成使用多字节字符集之后还是没有解决,后面又以为是我自己的代码出现了问题,反反复复检查了很多遍都没有发现什么问题,打断点都没有用,后面干脆一行行代码检验下来,终于发现是我在代码中用了print语句,才发现可能是c和c++一起用时出现了问题,浪费了整整两天时间才查出来。具体的解决方法就是将代码中所有的print语句换成cout就可以了。