记录软件使用过程中遇到的各种报错,下次遇到时可以直接解决。
- “operator new[]”: 5 个重载中没有一个可以转换所有参数类型
参考:https://www.cnblogs.com/zhishuai/p/7459095.html
- 无法打开文件“ libboost_signals-vc141-mt-sgd-x64-1_70.lib"
参考:https://blog.csdn.net/m0_37264397/article/details/79601900
https://www.cnblogs.com/bluedoctor/p/6236905.html
解决方法:
win+r打开cmd窗口,进入编译目录,执行
bjam stage --toolset=msvc-14.1 --stagedir=“D:\boost_1_65_1” link=shared runtime-link=shared threading=multi debug release
bjam stage --toolset=msvc-14.1 --stagedir=“D:\boost_1_65_1” link=static runtime-link=static threading=multi debug release
说明:
不同toolset版本只需更改版本就行,比如msvc-14.1的14.1改为其他版本,如9.0
目录如果编译的时候没有指定目录可以不需要指定
线程类型根据自己实际情况指定
-
error C1001: 编译器中发生内部错误
VS2013编译boost 编译发生内部错误
参考:https://docs.microsoft.com/zh-cn/cpp/error-messages/compiler-errors-1/fatal-error-c1001?f1url=https%3A%2F%2Fmsdn.microsoft.com%2Fquery%2Fdev15.query%3FappId%3DDev15IDEF1%26l%3DZH-CN%26k%3Dk(C1001)%26rd%3Dtrue&view=vs-2019
https://jingyan.baidu.com/article/3c48dd349a9616e10be3583d.html -
缺少类型说明符&未知重写说明符
因为没有using namespace std,string是std里的,另外注意类静态变量的初始化方式! 除此之外还有可能是:
4.1.循环引用
在分离式编译中,我们往往习惯将不同的类或者函数分别写在不同的函数中,提高工作效率。但如果在使用时出现两个类分别在两个不同的文件中编写,并且相互引用,则会出现循环引用,引发此错误。
解决方案:前置声明。
4.2.语法错误
此问题大多因为粗心而导致,比如在某个成员函数中把分号;写成了中文分号;,将会出现此类错误。
解决方案:修改分号
4.3.类的顺序错误
如果一个类的成员中包含另一个类,则被包含的类的生命一定要在包含的类之前。
- 持续补充…