C++初学谨记

1. C和C++使用灵活,在不同类型数据之间的赋值过程中,常常会出现意想不到的结果,并且编译系统对于这方面还不给于任何警告或者提示,全凭程序员的经验来查找。
2. 常变量不能作为左值
3. a/b若a和b都被定义成int型,得出的结果就是整数型,若a和b都被定义为double型,则a/b得出的结果就是double型。
4. C中若在定义函数时,不指定函数的类型,则默认为int型,但在C++中则没有默认的函数类型一说,必须定义。
5. 养成对所有函数做声明的习惯,保证程序的正确性和可读性。
6. 递归函数对计算机的时间和空间上的消耗比较大,若讲究性能的时候,是不可用的,但是若是没有要求,则可取。
7. 如果定义了一个数组a[10],显然有10个元素,int *p=a,若cout<<*(p+10),或者cout<<*(a+10),这两个语句明显超过了数组的元素个数,但是编译器不会报错,造成输出不可预期的结果,这类的错误积极隐蔽,因此,在使用指针变量指向数组元素时,要切实保证指向数组中的有效元素。

8. 引用指针变量时一定要给它赋值。

9. c++中特意添加了引用的功能,主要是用作于函数参数,既效率高,可读性还又好。

10. 能用单一继承解决问题的不要用多继承,因为很容易出现二义性。

11. 在向磁盘文件输出一个数据后,要输出一个(或者几个)空格或换行符,以作为数据间的分隔,否则以后从数据文件读数据时,所有的数据将会连成一片无法区分。

12. 用静态存储(static int f=1)要多占内存(长期占用不释放,不能像动态存储那样说要就要,说放就放,节约内存),而且还降低了程序的可读性(在循环中一遍一遍的敲到底是几了这次??),so,如不必要,远离静态局部变量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值