一、const和define区别数组
const有数据类型(不能改变的变量),define只是简单的字符串替换,没有数据类型。安全
C++程序用const彻底取代 define。函数
const还能够类成员函数为不能改变成员变量的恒态函数。(mutable int a除外).net
例子:3d
const int buffsize=10;对象
int buf[buffsize];blog
在C编译器中编译出错,由于继承
二、string类的使用字符串
string string[3]={“aa”,“bb”,“cc”};//定义了一个包含三个string对象的数组。get
三、内联函数(inline)
inline是指嵌入代码,在调用内联函数的地方直接嵌入代码,不须要中断调用,因此速度更快。和C中的#define相比,有类型检查,更加可靠安全。
何时使用:
一个函数不断被重复调用,函数的代码量少。如swap函数
inline void swap(int a,int b){a=a^b;b=a^b;a=a^b;}
四、栈和堆的地址分配
int a=1;
int *p=&a;
int &Ra=a;
cout<<&a”<<&a<<endl;
cout<<&p<<endl;
cout<<&Ra<<endl;
按变量定义的顺序,在栈上的地址分配的由高地址向低地址分配的
五、虚继承
六、函数调用也叫作过程,须要理解栈帧
http://blog.csdn.net/yxysdcl/article/details/5569351(栈帧讲得很是好)