c++面对对象设计 2

第二节

reference引用

 

int max;

int &refmax= max;(refmax是引用的符号)

 

不能重复使用,可以引用引用,

 

也可以引用一个指针(地址)

int a, *p;

int &m = a;

p = &m; //&m前面有类型符号时,如int,表引用说明;如果没有则是取变量地址

*p = 10;

 

如果声明一个常量const引用,不可以直接改变引用值,但可以改变被引用的数的值

 

不能建立void引用,不能建立引用的数组,不能建立指向引用的指针int & *p(指向引用的指针可以使用)

 

用途:主要用来作函数的参数或者函数的返回值

void swap(int &a, int &b)

{

int temp;

temp = a; a= b; b= temp;}

int main…

int i,j;

swap(i.j);

…结果是i,j交换值

 

引用和指针变量作为行参的区别

1引用作为形参,实参是变量值;指针作为。。。是地址

 

函数引用:

例1,

int &f(int x)

{

a=a+x;//a为全局变量或者静态局部变量static int a = 4;

return a;

}

//函数返回a的引用(f(t) = 20//可以将数值赋给返回的引用a,只有引用才能这样用)

 

 

内联函数

关键字inline必须与函数定义体放一起才能使函数称为内联函数,放在函数声明前面不起作用

 

函数体内出现循环或者递归等复杂的结构控制语句时,不适合定义为内联函数

 

作用域运算符

float a=13.5

int main..

int a = 3;

cout << a..

cout << ::a

//a是局部变量的a,::a是全局变量的a

 

字符串变量

string = string2;

字符串的赋值不用考虑长度

可以对字符串变量中的某一字符进行操作 string2[2] = ‘a’

字符串以“/0”结尾,但不包含/0

=+。。。

 

字符串数组string name[3] = {“Zhang”,“Li”,“Wang”};

 

动态分配/撤销内存new/delete

<指针名> = new <类型名>(<数值>)/[<数量>]

delete <指针名>

delete {}<指针名>//释放一定数量的空间

posted @ 2015-09-22 16:56  李杨阳  阅读(130)  评论(0)    收藏  举报