1,引用总是要初始化。
1.1
int num=5;
int &alias;//ERROR 没有初始化
alias=num;
1.2
num=5;
int &anum=num;//RIGHT
2
指针是一种用于储存“另外一个变量的地址”的变量。
3
数组本身就是地址,所以对数组变量也不用通过 & 来取址。
4
函数指针:
函数存放在内存的代码区域内,它们同样有地址,
如果我们有一个int test(int a)的函数,那么,它的地址就是函数的名字,这一点如同数组一样,数组的名字就是数组的起始地址。
定义一个指向函数的指针用如下的形式,以上面的test()为例: int (*fp)(int a);//这里就定义了一个指向函数的指针 。
5
一般来说函数调用比直接访问内存的开销要大得多因而
信息隐藏是否给程序的执行效率增加了严重的额外负担或许是阻碍性的负担呢幸运的是
在一般情况下回答是不
C++提供的解决方案是内联函数inline function 机制内联函数在它的调用点上被展
开一般来说内联函数不会引入任何函数调用.
for ( int index = 0; index < array.size(); ++index )
// ...
并没有真的被调用_size 次而是在编译期间被内联扩展为下面的一般形式
// array.size()的内联扩展
for ( int index = 0; index < array._size; ++index)
// ...
在类定义中被定义的成员函数如size() 会被自动当作是内联函数此外我们也可以
用inline 关键字显式地要求一个函数被视为内联函数.