您可以解释此C ++函数定义的语法吗?

保罗·尤尔扎克(Paul Jurczak)

我在MSDN文章中看到过类似于以下内容的函数定义

auto incr(int i) -> int {return i+1;}

它可以与VS2012一起编译并正常工作。有人可以解释它的语法吗?它是一个命名的lambda表达式吗?在“ C ++编程语言,第四版”中的哪里描述?为什么有人会这样写,而不是使用简单的形式:

int incr(int i) {return i+1;};
迪特玛·库尔(DietmarKühl)

这是尾随返回类型。尽管所有函数声明都允许使用它,但是在定义函数模板时,它主要有用。从函数模板返回的类型通常取决于某些表达式的结果,并且可以使用相关类型的变量来表达它们,这很有帮助,例如

template <typename M, typename N>
auto multiply(M const& m, N const& n) -> decltype(m * n) {
    return m * n;
}

由于mn参数声明之后才会宣布,将返回类型的参数声明而不是之前帮助模板代码。在非模板代码中,auto当可以推断出返回类型时,使用C ++ 14可能会变得更加有用。在C ++ 11中,它实质上是非模板代码的样式选择。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

您可以解释此C ++函数定义的语法吗?

来自分类Dev

您可以使用ctime重现或解释此Visual C ++错误吗?

来自分类Dev

我可以在 where 语法下定义多个函数吗?

来自分类Dev

您可以解释这种JavaScript语法(变量外推)吗?

来自分类Dev

有人可以解释此模板函数声明语法

来自分类Dev

您可以发现此SQL错误吗?

来自分类Dev

您可以在D中内联定义函数吗?

来自分类Dev

您可以通过示例解释AspectJ的cFlow(P && Q)吗?

来自分类Dev

您可以在c中的函数的callong中调用函数吗

来自分类Dev

C#规范-第1.6.7.5节,有人可以解释此示例吗?

来自分类Dev

有人可以解释此C语句的组成部分吗?

来自分类Dev

有人可以解释以下C ++语法吗?

来自分类Dev

您可以在C ++中定义同义词吗?

来自分类Dev

BNF C语法中的函数定义

来自分类Dev

C宏函数定义语法问题

来自分类Dev

BNF C语法中的函数定义

来自分类Dev

有人可以解释此require.js示例中涉及的语法吗?

来自分类Dev

有人可以帮助解释 Google 表格中此查询背后的语法吗?

来自分类Dev

您可以在C中使函数参数指向变量吗?

来自分类Dev

您可以不使用Deferred来编写此代码吗?

来自分类Dev

您可以仅使用 CSS 创建此渐变条吗?

来自分类Dev

PHP Prepared语句(递归函数),您可以解决此问题吗?

来自分类Dev

PHP Prepared语句(递归函数),您可以解决此问题吗?

来自分类Dev

可以在C ++中模仿此JS语法吗

来自分类Dev

您可以从lua修改C结构吗?

来自分类Dev

有人尝试创建自定义工具时可以解释此错误吗?

来自分类Dev

有人可以向我解释此代码吗?

来自分类Dev

有人可以逐步解释此功能的作用吗

来自分类Dev

有人可以解释此代码的工作原理吗?

Related 相关文章

  1. 1

    您可以解释此C ++函数定义的语法吗?

  2. 2

    您可以使用ctime重现或解释此Visual C ++错误吗?

  3. 3

    我可以在 where 语法下定义多个函数吗?

  4. 4

    您可以解释这种JavaScript语法(变量外推)吗?

  5. 5

    有人可以解释此模板函数声明语法

  6. 6

    您可以发现此SQL错误吗?

  7. 7

    您可以在D中内联定义函数吗?

  8. 8

    您可以通过示例解释AspectJ的cFlow(P && Q)吗?

  9. 9

    您可以在c中的函数的callong中调用函数吗

  10. 10

    C#规范-第1.6.7.5节,有人可以解释此示例吗?

  11. 11

    有人可以解释此C语句的组成部分吗?

  12. 12

    有人可以解释以下C ++语法吗?

  13. 13

    您可以在C ++中定义同义词吗?

  14. 14

    BNF C语法中的函数定义

  15. 15

    C宏函数定义语法问题

  16. 16

    BNF C语法中的函数定义

  17. 17

    有人可以解释此require.js示例中涉及的语法吗?

  18. 18

    有人可以帮助解释 Google 表格中此查询背后的语法吗?

  19. 19

    您可以在C中使函数参数指向变量吗?

  20. 20

    您可以不使用Deferred来编写此代码吗?

  21. 21

    您可以仅使用 CSS 创建此渐变条吗?

  22. 22

    PHP Prepared语句(递归函数),您可以解决此问题吗?

  23. 23

    PHP Prepared语句(递归函数),您可以解决此问题吗?

  24. 24

    可以在C ++中模仿此JS语法吗

  25. 25

    您可以从lua修改C结构吗?

  26. 26

    有人尝试创建自定义工具时可以解释此错误吗?

  27. 27

    有人可以向我解释此代码吗?

  28. 28

    有人可以逐步解释此功能的作用吗

  29. 29

    有人可以解释此代码的工作原理吗?

热门标签

归档