1.[Error] in C++98 'box1' must be initialized by constructor, not by '{...}'
vector初始化问题:CBox box1 ={78.0,24.0,18.0}; 改成CBox box1 (78.0,24.0,18.0)
或者开启编译选项 -std=c++11
- 变量定义的问题:
例如:想要定义三个整型变量,初始化为0;
int a, b, c=0;这样不对!!!
>>int a, b, c; a=b=c=0; 这样可以!
>>int a=0, b=0, c=0; 这样可以!
- 二维数组作为函数参数时必须注意:
将二维数组当作参数的时候,必须指明所有维数大小或者省略第一维的,但是不能省略第二维或者更高维的大小;
原因:这是由编译器原理限制的。事实上,编译器是这样处理数组的:
对于数组 int p[m][n],如果要取p[i][j]的值(i>=0 && i<m && 0<=j && j < n),编译器是这样寻址的,它的地址为:
p + i*n + j;//注意n!!
这里如果省略了第二维或者更高维的大小,编译器将不知道如何正确的寻址!!!
正确写法:
void function(int p[][n])
void function(int p[m][n])
void function(int p[][])这样不可以
4. makefile编译出错: undefined reference to 'RBF()'
collect2: error: ld returned 1 exit status
一开始以为是makefile写的依赖关系出错,但后来发现竟然是RBF这个函数的声明和定义里的参数不一样,有没有&都会报错,要统一;
--------(不断更新中)
日积月累,滴水穿石
原文链接: https://www.cnblogs.com/maq-aegean/p/9197512.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/276255
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!