关闭

Effective C++回顾(2)

1332人阅读 评论(0) 收藏 举报

条款3:尽量以newdelete取代mallocfree

取代没有问题,这个对于了解c++语言的人都了解它们之间的不同,可是往往在代码中很多时候还是会出现混淆。主要原因是,虽然我们使用C++来书写代码,可是程序中会大量使用一些C语言库和一些早期的C语言书写的公共库,所以在什么时候对返回的内存要调用delete,什么时候要调用free,对于一些维护项目和新员工来讲,还是一个非常复杂的问题。由于程序在很多的情况下,混淆释放内存函数,并不会引起程序问题,在这种情况下也就更难以发现问题了。为了解决这个问题,我们想出了一个办法,就是对于new出来的对象,我们是返回一个autoptr类,对于malloc出来的,返回的就是一个void *,采用这种方法之后,混淆释放内存函数基本上就再也没有出现过,同时也接近了采用了面象对象的方法了。

 

条款4:尽量使用C++风格的注释形式

这是我自己认为实现的最彻底的条款。问题的关键,我们不是用来写注释,而是用来注释代码,这两个是有很大的区别的。对于程序中要不要书写注释,我也看到过很多的书都讲了它的重要性,可是自己也阅读了很多的SDK,发现注释虽有,可是少的可怜,而且很多情况下,一些注释还会引起一些误解。自己在开发程序这么多年,写过的注释少的可怜,数都数的过来。我想主要是有下面几个原因:

1.  懒惰。

2.  认为代码就是最好的注释。

3.  对于一些注释,由于后来的功能发生了变化,没有及时的更新注释,注释变成了误释了,所以也就认为没有必要了。

对于代码中要不要写注释,自己还是很茫然。

 

待续

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:269790次
    • 积分:3808
    • 等级:
    • 排名:第8350名
    • 原创:92篇
    • 转载:5篇
    • 译文:24篇
    • 评论:61条
    文章分类