码迷,mamicode.com
首页 > 其他好文 > 详细

【共读Primer】51.[6.3]返回类型和return语句--列表初始化返回值 Page203

时间:2018-09-07 10:58:57      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:c++   string   值类型   inf   ted   exp   return语句   c++11   fun   

列表初始化返回值

C++11规定可以以列表初始化的方式来进行返回值的表达。

vector<string> process()
{
    if(expected.empty())
        return {};
    else if(expected == actual)
        return {"funcationX", "okay"};
    else 
        return {"funcationX", expected, actual};
}

 

主函数main的返回值

非void返回值类型的函数,必须有一条返回值。

main函数是这条规定中的一个例外。 

虽然看上去可以不写return,但实际的情况是编译器会添加一条reuturn 0的语句。

一般来说main函数的返回值看作整个程序执行结果的一个直接指示。

递归

函数对自身的调用称为递归, 而这种调用关系是否直接调用,只要对自身有调用就称为递归。

递归的第一原则,一定要有退出的条件,否则将会变成无限循环,耗尽栈空间(虽然现在很难耗尽)

int factorial(int val)
{
    if(val > 1)
        return factorial(val-1) * val;
    return 1;
}

技术分享图片

【共读Primer】51.[6.3]返回类型和return语句--列表初始化返回值 Page203

标签:c++   string   值类型   inf   ted   exp   return语句   c++11   fun   

原文地址:https://www.cnblogs.com/ChattyKu/p/9602572.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!