您的位置:首页 > 编程语言 > C语言/C++

C++学习笔记13——函数返回值

2015-10-10 20:33 393 查看
1,返回void类型

(1)函数结束时可以不使用return语句;

(2) return;

(3) return fun(); //其中fun()返回void类型

2,返回非引用类型

在调用函数的地方,将返回值复制给临时对象

3,返回引用类型

(1)在调用函数的地方,没有复制返回值,返回的是对象本身;

(2)千万不可以返回局部变量的引用。因为当函数调用结束后,局部变量不再存在;

(3)普通引用返回的是左值,可以对返回的值直接赋值

设有如下函数定义,

double &get_val(double (&arr)[10],size_t ix)
{
return arr[ix];
}




double d_arr[10] = {0,1,2,3,4,5,6,7,8,9};
cout << d_arr[3] << endl;
get_val(d_arr,3) = 17; //给函数返回值赋值
cout << d_arr[3] << endl;
分别打印出结果:

3

17

(4)如果不希望引用返回值被修改,则返回值应声明为const:

const double &get_const_val(double (&arr)[10],size_t ix)
{
return arr[ix];
}
这样给get_const_val()的返回值赋值时会报错。

//error C3892: “d_arr”: 不能给常量赋值
get_const_val(d_arr,3) = 9;
cout << get_const_val(d_arr,3) << endl;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: