函数返回值

函数返回值

经验文章nimo972025-04-27 16:02:3012A+A-


若文章对您有帮助,欢迎关注 程序员小迷 。助您在编程路上越走越好!



人为财死鸟为食亡。天下熙熙皆为利来,天下攘攘皆为利往。


不同语言的返回值

  • 大部分编程语言使用 return [val] 作为返回值。C系语言和Shell都是如此。
    C/ObjC/C++/Java/C#/Python/Shell/仓颉 等。
  • Shell有点特殊,如果没指定return, 将最后一条命令退出状态作为返回值。
  • VB 没有Return语句(VB.Net才有),函数名作为返回值,函数返回值可以传递给函数名返回。
  • 仓颉 不一定需要为函数指定返回值,编译器根据函数实现可以推测返回值。


多个返回值?

  • 大部分早期的编程语言不支持多个返回值,因为会让问题变得复杂。比如:
    • C/ObjC/C++/PHP 等。
    • 但并不意味无法返回多个值,可以利用指针参数传出返回值。
  • Python/Go 都支持函数的多个返回值。
    例如Python返回两个整数:
    def test():
    return (2, 3)
  • C# 7.0支持返回元组实现多个返回值,在此之前,必须用out参数来构造多个返回值。


成功返回

  • Shell函数返回和命令返回遵循相同原则,返回0代表成功,非0代表失败。这与编译型语言函数返回不太一样。


简洁返回

有些函数返回值仅仅是对参数的简单操作,一些编程语言提供简洁的返回方式。

  • C# 6.0引入了expression-bodied methods, 可将一个表达式当做函数返回值。
    public int Add(int a, int b) => a + b;


函数返回之后有其他语句?

  • C# 会警告这种代码。








若文章对您有帮助,欢迎关注 程序员小迷 。助您在编程路上越走越好!

微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。

我是 程序员小迷 (致力于C、C++、C#、Android、iOS、Java、Kotlin、Objective-C、Swift、Shell、JavaScript、TypeScript、Python等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。

点击这里复制本文地址 以上内容由nimo97整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

尼墨宝库 © All Rights Reserved.  蜀ICP备2024111239号-7