首页 >后端开发 >C++ >跟踪还是不跟踪:C 11 的跟踪返回类型应该成为新的默认值吗?

跟踪还是不跟踪:C 11 的跟踪返回类型应该成为新的默认值吗?

Susan Sarandon
Susan Sarandon原创
2024-12-03 20:20:12336浏览

To Trail or Not to Trail: Should C  11's Trailing Return Type Be the New Default?

尾随返回类型语法应该成为新 C 11 程序的默认语法吗?

C 11 引入了一种新的函数语法来放置返回类型函数参数后:

auto func_name(int x, int y) -> int;

这个和传统的不同语法:

int func_name(int x, int y);

尽管它可用,但尾随返回类型语法的采用速度很慢。本文探讨了此语法的优点和缺点,以确定它是否应该成为新 C 11 程序的默认语法。

尾随返回类型语法的优点

某些情况需要使用尾随返回类型。例如,在 lambda 表达式中以及在范围内使用带有参数名称的 decltype 时。此外,尾随返回类型具有可读性优势:

  • 定义非内联成员函数时不需要重复成员类型定义。
  • 使用尾随返回类型时函数名称会对齐始终如一。

尾随返回类型的缺点语法

尾随返回类型语法的主要缺点是它可能会导致代码具有混合样式,这在美观上可能令人不快。但是,可以通过在整个代码库中一致采用尾随返回类型语法来缓解此问题。

结论

虽然尾随返回类型语法具有优势,但它是并非没有缺点。目前它的使用并不广泛,但它有有效的应用。它是否应该成为新 C 11 程序的默认设置仍然是个人喜好的问题。最终,选择取决于每个开发人员的具体需求和编码风格。

以上是跟踪还是不跟踪:C 11 的跟踪返回类型应该成为新的默认值吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn