返回类型和return语句:无返回值函数,有返回值函数,返回数组指针

重点:

1.return语句功能:终止当前正在执行的函数并将控制权返回到调用该函数的地方。Return语句两种形式:

Return

Return expression;

2.返回void的函数不要求非得有return语句,因为在这类函数的最后一句后面会隐式地执行return

3.Void函数如果想中间退出,可以使用return,作用相当于break,提前退出。

4.一个返回类型是void的函数也可以使用return expression形式,不过return语句的expression必须是另一个返回void的函数。

5.Return语句的返回值类型必须与函数的返回类型相同,或者能隐式地转换成函数的返回类型。

6.在含有return语句的循环后面应该也有一条return语句,如果没有的话,程序就应该是错误的。

7.函数完成后,它所占用的存储空间也随之释放。因此,函数终止将意味着局部变量的引用将指向不再有效的内存区域。

Tip:确保返回值安全,我们不妨提问:引用所引的是在函数之前已经存在的哪个对象?

8.返回局部对象的引用时错误的,同样,返回局部对象的指针也是错误的。一旦函数完成,局部对象被释放,指针将指向一个不存在的对象。

9.引用返回左值!出现在赋值语句的左侧;如果返回类型是常量引用,不可以给结果赋值。

10.C++11新标准规定:函数可以返回花括号包围的值的列表。

   Return {};

   Return {“functionX” , “okey”};

   Return {“functionX” , expected , actual};

如果函数返回的是内置类型,则花括号包围的列表最多包含一个值。

11.C++11新标准规定:我们允许main函数没有return语句直接结束,因为如果到了main函数的结尾处没有return语句,编译器会隐式地插入一条返回0return语句。

12.预处理变量,既不能在前面加上std::,也不能在using声明中出现。

13.递归函数:如果函数调用了它本身,无论调用是直接的或是间接的,都称为递归函数。

NOTEmain函数不可以调用自己!

14.因为数组不能被拷贝,所以函数不能返回数组。但是可以返回数组的指针或引用。

15.返回数组指针的函数形式如下所示:

   Type ( *function ( parameter_list ) [dimension]

Type:表示元素的类型,dimension表示数组的大小,(*function(parameter_list))两端的括号必须存在。

Tip:如果没有这对括号,函数的返回类型将是指针的数组。

转载于:https://www.cnblogs.com/YH-shjd-senvn/p/5780986.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值