GCC ERRORS

GCC error: declaration of … shadows a parameter

函数中定义和函数参数相同(名字和类型完全相同)的变量(这在VS中并不是ERROR,不过这确实是一件严重的事情);

rror: extra qualification ‘Class::’ on member ‘Class’ [-fpermissive]

 

class Class
{
    Class::Class(){} // 构造函数写成这样是错的,然而VS却能正常编译过,GCC则不能
}

error: invalid initialization of non-const reference of type ‘Type& {aka std::vector<std::shared_ptr<A> >&}’ from an rvalue of type ‘Type {aka std::vector<std::shared_ptr<A> >}’

这在VS下是没问题的. GCC报错也是为了安全, 因为返回的是引用, 要求const会使代码更安全.

min, max fabs等最好使用std的版本, windows自带的版本在linux下是肯定不能用的.

VS下不需要而Linux下需要的头文件

#include <memory>      // std::shared_ptr()
#include <string.h>    // std::strcpy(), std::memcpy()
#include <limits>      // std::numeric_limits<>

 

Add a Comment

电子邮件地址不会被公开。 必填项已用*标注

17 − 1 =