一、#include “filename.h”和#include <filename.h>的区别 {kG;."S+K
jNqVdP]d\
#include “filename.h”是指编译器将从当前工作目录上开始查找此文件 J(hA^;8:
dqwWfn1lt
#include <filename.h>是指编译器将从标准库目录中开始查找此文件 iE+6UK
yjv&4pIc1
E@]sq A
二、头文件的作用 ]W|RtdF3.N
TPqvp|~2
加强安全检测 aZxO/b^j
O'Am
RJ
通过头文件可能方便地调用库功能,而不必关心其实现方式
w[{*9
p.aE
KE#$+,?
三、* , &修饰符的位置 QB9A-U<J
w%I8CU_}.
对于*和&修饰符,为了避免误解,最好将修饰符紧靠变量名 N.n1<
H\f/n`@,G
,N;v~D$Y
四、if语句
I9Om#m
@|]G0&gn&?
不要将布尔变量与任何值进行比较,那会很容易出错的。 hqWbp*
nO}$ 76*'0
整形变量必须要有类型相同的值进行比较 *sAOpf@M
`
Rsl]
GB
浮点变量最好少比点,就算要比也要有值进行限制 'M
lXnHxt
r?]%d!
指针变量要和NULL进行比较,不要和布尔型和整形比较 #O><A&FrF`
s%bUgO%&
~RCg.&[ou
五、const和#define的比较 /6smVz@O
A{t"M-<
const有数据类型,#define没有数据类型 Fi/jR0]e2
5d(qtFH1
个别编译器中const可以进行调试,#define不可以进行调试 ef,F[-2^o
=lm nzu<
在类中定义常量有两种方式 @Z"?^2
PMsC*U,oe
1、 在类在声明常量,但不赋值,在构造函数初始化表中进行赋值; "bi !=
:Ip~)n9t
2、 用枚举代替const常量。 b+_hI)T
e
%&
uYY=~o[
Tw
六、C++函数中值的传递方式 M(NH9EE
`TkbF9N+
有三种方式:值传递(Pass by value)、指针传递(Pass by pointer)、引用传递(Pass by reference) h\2}875
2$
void fun(char c) //pass by value -2z,cj&E{
CBIT`k.+
void fun(char *str) //pass by pointer -@#Pc#
:` ;(p{
void fun(char &str) //pass by reference !2wETs?
gDMAc/V`l
如果输入参数是以值传递的话,最好使用引用传递代替,因为引用传递省去了临时对象的构造和析构 6g8M7<og9R
?&XzW+(X
函数的类型不能省略,就算没有也要加个void ,Z?m`cx
#[Z<