一、#include “filename.h”和#include <filename.h>的区别 :I }_
]X)EO49
#include “filename.h”是指编译器将从当前工作目录上开始查找此文件 ^$y_~z3o#7
^OQ#N z
#include <filename.h>是指编译器将从标准库目录中开始查找此文件 Do|`wpR
xf@D<}~1
IczEddt@'
二、头文件的作用 ?D6rFUs9;
`'[ 7M
加强安全检测 `v)-v<
J)n g,i
通过头文件可能方便地调用库功能,而不必关心其实现方式 a|\_'#
]eq3cwR[|
-~h2^Oez
三、* , &修饰符的位置 .j4IW3)
#|8!0]n'
对于*和&修饰符,为了避免误解,最好将修饰符紧靠变量名 !m1pL0
T`=N^Ca1!`
L$x/T3@
四、if语句 <u"#Jw/VP
yREO;m|o
不要将布尔变量与任何值进行比较,那会很容易出错的。 8C=Y(vPk2
m-a_<xo
整形变量必须要有类型相同的值进行比较 .-N9\GlJ,d
;r[=q u\
浮点变量最好少比点,就算要比也要有值进行限制 um&e.V)N
+-#| M|a
指针变量要和NULL进行比较,不要和布尔型和整形比较 I=^%l7
UgJ^NF2w
9=I(AYG{m
五、const和#define的比较 $/45*
!{SU G+.2
const有数据类型,#define没有数据类型 0r=Lilu{q
y\@;s?QL
个别编译器中const可以进行调试,#define不可以进行调试 \'"q6y
-zz9k=q
在类中定义常量有两种方式 h3xX26l
6SsZK)X
1、 在类在声明常量,但不赋值,在构造函数初始化表中进行赋值; (w% hz']
9#6ilF:F
2、 用枚举代替const常量。 vVLR9"rHM
tO?*x/XC{
cVn7jxf
六、C++函数中值的传递方式 wR/i+,K
K"b vUH
有三种方式:值传递(Pass by value)、指针传递(Pass by pointer)、引用传递(Pass by reference) mXF
pGo5 s
<z)MV
oa
void fun(char c) //pass by value b)w3
G%Xx
k=bv!T_o
void fun(char *str) //pass by pointer
VV]{R'
4'9h^C&
void fun(char &str) //pass by reference i`8!Vm
:eQxdi'
如果输入参数是以值传递的话,最好使用引用传递代替,因为引用传递省去了临时对象的构造和析构 /IV:JVT
x)vYc36H
函数的类型不能省略,就算没有也要加个void ,bmTBZV
a$t [}D2
nhXa&Nro
七、函数体中的指针或引用常量不能被返回 +Mm0bqNN
4b3p,$BWS
Char *func(void) <k^9l6@
a/^YgrC\T
{ x'JfRz
PD/JXExK
char str[]=”Hello Word”; 2 >xV&