1、if 和 else之后加上一对大括号,防止出现由悬挂“else”引起的问题。
2、分号;的思考
struct tagPersonInfo{string strName; int iSex;} ;IsAWomen(struct tagPersonInfo pesonInfo){……}在这段代码中,IsAWomen本无声明返回类型的,默认返回类型是int。但由于缺少;则IsAWomen真正的返回类型是tagPersonInfo。在类声明的时候,也需要注意是否有“;”。
3、条件操作符和逗号操作符
条件操作符是C++唯一的“三目运算符”,(expression1)?(expression2):(expression3);//(expression1)为ture,只计算(expression2),否则只计算(expression3)逗号操作符的每个表达式都会被求值,而整个表达式的值却是最后一个表达式的值。求值顺序已固定好了,从左到右。
4、效果相对高一点
(1)在多重循环中,应当将最长的循环放到最内层,最短的循环放到最外层,以减少CPU跨切循环层的次数。(2)在循环体重,存在逻辑判断,并且循环次数很大,宜将逻辑判断移到循环体外面。但如果循环次数N不大,可以放在循环体内,语句简洁明了。(3)++i 比i++效率高;终止条件i!=N代替i<N更好; 使用!=位运算,而<需要做减法,显然位运算更快。
5、内联函数
隐式内联函数的实现,是把成员函数的实现放到类的声明中,虽然书写上的比较方便,但并不是一种良好的编程风格。建议使用显示内联函数。
6、程序入口Main函数
在C/C++标准中从来就没定义过void main()这样的main函数形式,是不符合C++标准的。main()的返回值应该为int类型,不应该为void 或者其他类型。不过VC++还是支持void main();但如GCC等编译器就不支持这种形式。
7、尽量拒绝使用变参函数
C++语言完全继承了C语言所提供的参数个数可变的函数形式。如scanf(),printf()。