C++ -- 函数:引用形参

来源:互联网 发布:网友见面 知乎 编辑:程序博客网 时间:2024/04/29 03:40

一,C语言更多使用指针,c++更多实用应用,使用引用更安全和自然.

 

二,使用引用形参返回额外信息(使用)

   通过返回迭代器,迭代器所指的对象则是额外返回的信息.

 

三,利用const引用避免复制

  如果使用引用形参的唯一目的是避免复制实参,则应将形参定义为const引用.

 

四,传递指向指针的引用:

Void ptrswap(int *&v1, int *&v2)

{  int *tmp = v2;

       V2 = v1;

       V1 = tmp;}

/*交换两个指针指向的地址*/

 

五,vector和其他容器类型的形参

  同样为了避免复制形参,通过传递迭代器来传递容器

void print(vector<int>::const_iterator beg,

vector<int>::const_iterator end)

{/*….*/}

 

六,数组形参

Void prinvalue(int *) {/*…*/}

Void prinvalue(int[]) {/*…*/}

Void prinvalue(int[10]) {/*…*/} 

 //编译器不检查长度,使用时超出范围也合法,但调用时会错误

三个定义等价,形参类型均为int*.

数组实参传递时默认传入指针,形参副本复制的是指针的值,通过形参的操作都在对数组本身进行操作.

 

七.通过引用传递数组

void printValue(int (&arr)[10]) {/*…*/}

引用含有10个元素的数组.

 

八,多维数组的传递.

Void prinvalue(int (*matrix)[10], int rowSize) {/*…*/}   //圆括号不可少.下标操作符具有更高优先级

Void prinvalue(int matrix[][10], int rowSize) {/*…*/}



原创粉丝点击