effective c++

条款2:尽量用const和inline而不用#define   1,用#define一个符号名代替某个常数时,预处理器在编译前就将其替换,所以编译器无法获得该符号名的任何信息,而以后的发生关于该符号名的一些错误可能很令人费解。   2,用#define实现那些看起来象函数而又不会导致函数调用的宏,可能产生很多缺陷和问题。可以直接使用inline函数调用。

条款3:尽量使用<iostream>而不用<stdio.h>   1,stdio.h中的scanf和printf虽然很好用,但是不是类型安全的且没有扩展性。而使用iostream中的<<和>>操作符却恰恰很好的解决了这个问题。   2,使用<<和>>,编译器可以自动根据变量类型选择操作符的不同形式,不必要像在scanf和printf上一样,需要死记一些规定。   3,尽管有些iostream的操作实现起来比相应的Cstream效率要低,但是iostream库类有构造函数,最重要的是库中的类和函数所提供的类型安全和可扩展形远超过想象。

条款4:尽量用new和delete而不用malloc和free   1,malloc和free没有构造函数和析构函数。所以在使用的时候不能用来给对象分配空间。   2,不要讲new,delete和malloc和free混合使用,不然可能产生不可预测的错误。

条款5:尽量使用C++风格的注释   1,C的注释规范嵌在被注释代码块内部的注释可能让注释无意间提前结束。

转载于:https://www.cnblogs.com/WFLing/p/3359755.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值