重庆自考计算机科学技术:深入讨论函数返回值

2021-07-23

深入讨论函数返回值

C++函数的返回值类型可以是除数组以外的任何类型。非void类型的函数必须向调用者返回一个值。数组只能返回地址。当函数返回值是指针或引用对象时,需要特别注意:函数返回所指的对象必须继续存在,因此不能将函数内部的局部对象作为函数的返回值。

3.2.1 返回引用的函数

函数可以返回一个引用,将函数说明为返回一个引用的主要目的是为了将该函数用在赋值运算符的左边。函数原型的表示方法如下:

数据类型 &函数名(参数列表);

3.2.2 返回指针的函数

函数的返回值可以是存储某种类型数据的内存地址,称这种函数为指针函数。它们的一般定义形式如下:

类型标识符 *函数名(参数列表);

C++中,除了内存分配失败之外,new不会返回空指针,并且没有任何对象的地址为零。指针所指向的对象的生存期不应低于该指针的生存期。

3.2.3 返回对象的函数

3.2.4 函数返回值作为函数的参数

如果用函数返回值作为另一个函数的参数,这个返回值必须与参数类型一致。