Chinaunix首页 | 论坛 | 博客
  • 博客访问: 8304738
  • 博文数量: 1413
  • 博客积分: 11128
  • 博客等级: 上将
  • 技术积分: 14685
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-13 10:03
个人简介

follow my heart...

文章分类

全部博文(1413)

文章存档

2013年(1)

2012年(5)

2011年(45)

2010年(176)

2009年(148)

2008年(190)

2007年(293)

2006年(555)

分类: C/C++

2007-12-10 09:24:22

虽然实践证明在许多时候,C的执行效率更高,但是从编码效率上来讲,C++我觉得更胜一筹。虽然我的C/C++尚未到达炉火纯青的地步,但是我却愿意随时写一些我的感受与大家分享。在更多的时候,我更喜欢使用C++,因为我觉得许多时候有些东西更加安全,也更容易让人理解。仅管我觉得在C中许多技巧性的东西非常有趣。
一、使用iostream代替stdio。虽然他们在功能上面都是类似的,IOSTREAM是类型安全的,而且功能上面也很丰富,基本上STDIO可以做的IOSTREAM都可以做。
二、使用string来代替字符串指针。string类型更容易让人理解,而且针对他的操作函数基本上也满足我们对字符串的操作要求。即使有些API需要调用字符串指针,也可以通过c_str来转换,非常方便。
三、使用new/delete来代替malloc/free
其实在实际应用中他们效果似乎没有什么不同,但在C++中,我们一般都是用前者的。
四、以类的思想来构思程序。在C中我们写一个又一个的函数,然后按过程及关系将这些函数组合起来,但是在C++,我们首先想到的是先以类的思想去思考程序,将所要用的数据和操作作为成员变量及函数进行归类,这样的话,程序更加规范化。
五、使用标准库
C++的标准库提供了许多有用的数据结构,像List,Stack,Vector等等,这样的话在写程序的过程中就省事多了。
六、使用auto_ptr代替指针
当然是部分的代替,也不能完全的代替。声明一个变量: 
auto_ptr str (new string);
调用它:
*str="just test";
str->size();
往往在许多时候,在C++程序中抛出异常我们无法清除分配的指针对象,而auto_ptr是不需要清除的,是自动销毁的,所以保证了代码的安全性。
七、尽量使用静态变量,而不是全局变量。
全局变量使模块间的耦合性大大降低,而静态变量因为可以在函数范围内保持数据状态,所以在许多时候也可以代替全局变量。所以来讲,静态变量(static)还是非常管用的。
C更加灵活,而C++则更加规范。我喜欢让我的工程从C++开始建立,因为在C++中我们依旧可以使用C的许多技巧,但是规范的C++代码让人喜欢。代码的稳定性和安全性绝对是首要考虑的问题,我的启蒙老师候老师说程序的第一要求是稳定,这句话的确是经得起实践检验的。我想写出稳定的、快速的、整洁的代码,一言以蔽之,写出优雅的代码,像艺术品一样的代码,即使是阅读你的代码的人,也觉得是一种享受,这是我的目标,我正在为此而努力。今天整理了七点,虽然不太全面,但也是心得之谈,往后的日子我会将更多的想法加入到里面的。希望能与更多的人分享他们。

阅读(2690) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~