我是c++新手,写了一个class,第一版本大概长这个样:
// 头文件 (a.h)
class A{
public:
void func1(int a, float b, const a_ref_type& obj);
};
// 源文件(a.cpp)
void A::func1(int a, float b, const a_ref_type& obj){
...
}
同事review我的代码的时候,要求我把参数a和b也都加上const,所以我在头文件和源文件里面都加上了(虽然我觉得加不加好像没什么影响,可能是好习惯?),第二版长这样:
// 头文件 (a.h)
class A{
public:
void func1(const int a, const float b, const a_ref_type& obj);
};
// 源文件(a.cpp)
void A::func1(const int a, const float b, const a_ref_type& obj){
...
}
同事这时又要求我把头文件里面的const去掉,只保留源文件里面的const,第三版变成这样:
// 头文件 (a.h)
class A{
public:
void func1(int a, float b, const a_ref_type& obj);
};
// 源文件(a.cpp)
void A::func1(const int a, constfloat b, const a_ref_type& obj){
...
}
我不是特别理解这样做的好处是什么,是一个比较好的code style么?同事说第二版编译的时候会有warning,不过我好像并没有看到warning。。来请教一下大神们的看法。。
--
FROM 70.19.82.*