C++ error记录
记录编译C++遇到的error。
xlonlat
这个作者很懒,什么都没留下…
展开
-
no known conversion for argument 1 from 'class-name' to 'class-name&'
声明复制构造函数,参数需要const修饰,若没有const修饰在VS编译环境下可以通过,但是Linux下使用g++编译,则会报错。templateclass SmartPtr{public:TYPE* m_pData;public:SmartPtr(){m_pData = NULL;}SmartPtr(const SmartPtr &原创 2017-08-30 15:52:20 · 6705 阅读 · 0 评论 -
【c++常见错误01】error C2662: ‘const xxx‘: cannot convert ‘this‘ pointer from ‘xxx‘ to ‘xxx‘
原因造成这个错误的一般原因是常量对象尝试调用该对象里的非常量函数,例如class Bala里有一个普通的成员函数func(),在某处声明了Bala类常量对象bala,const Bala bala,这是通过bala调用func()肯定是不行的。class Bala{ void func() { // balabala... } void func_2() const { // balabala... }}int main(){ const Bala bala; ba原创 2022-04-21 15:43:47 · 8626 阅读 · 0 评论 -
error: jump to label ‘xxxxx’ [-fpermissive]
C++中使用goto语句可以跳到指定的函数末端,在使用g++编译时,要注意在goto语句出现之后是不允许出现新申明的变量,所以需要申明变量需要放在所有goto语句之前。(VisutalStudio编译无此问题)。#include void Test(int m){int i = m;if (i > 10) goto res;int j = i原创 2017-08-23 15:20:45 · 10890 阅读 · 0 评论