首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

关于C++类的书写风格的讨论,该如何处理

2012-03-22 
关于C++类的书写风格的讨论对于c++类的成员函数,以前一直沿用通常的写法,即在头文件中进行声明,在.cpp文件

关于C++类的书写风格的讨论
对于c++类的成员函数,以前一直沿用通常的写法,即在头文件中进行声明,在.cpp文件中具体实现。
最近采用了偷懒的做法,将实现也在头文件中,并且在class内来定义(见下面示例)。这样一来,就拥有了诸多方便之处:
1.省去了函数的声明
2.不必总是在.cpp和.hpp(.h)两个文件之间切来切去了
3.不必在实现类时写烦人的 ClassName::了
4.修改函数定义时,不必象之前考虑两边需要同步了


改用这种书写方式后,感觉方便多了,写代码时,甚至感觉心情都舒畅了许多 :)

当然,这样一来,肯定也有缺点,比如不会象之前可以把所有的声明放在一起,方便查看,但很多IDE都能够提供这方面的功能。
这里想问一下,这样有没有其它方面的问题或弊端,比如对于程序的编译、执行效率方面?
也希望大家一起讨论一下,分享一下各自好的编码习惯。

示例:

C/C++ code
class Test{private:  public:   void hello(char *s){     printf(s);   }   void helloWorld(){     hello("hi! ");     }}


[解决办法]
我比较习惯 把所有的声明放在一起 ,当代码量一上来,方便查看是首要关注的。
希望这个话题引起热议。
[解决办法]
个人爱好,个人风格。
[解决办法]
探讨

个人爱好,个人风格。

[解决办法]
个人习惯没啥问题,主要是不符合主流规范
[解决办法]
这样默认是内联编译,还有编译以依赖的问题,问题太多了!
[解决办法]
探讨
引用:
1. 会导致程序编译后的二进制体积膨胀:内联
2. 会严重影响编译时间:因为只要修改一处实现,就要重新编译包含该头文件的所有源码!
3. 如果作为类库,还存在一个ABI兼容问题:加大维护难度


天下没有免费午餐。这样看来,如果是大工程,或者作类库,的确这样问题比较大。

[解决办法]
1. 会导致程序编译后的二进制体积膨胀:内联
2. 会严重影响编译时间:因为只要修改一处实现,就要重新编译包含该头文件的所有源码!
3. 如果作为类库,还存在一个ABI兼容问题:加大维护难度

[解决办法]
同意10楼的观点
代码如果规模上去的话 一修改头文件 导致include的cpp会重新编译连接 

热点排行