为什么我不能 return 直接在函数中作废

Why Cant I return Void directly in a function

在test1()中,可以return将test()return成功的作废。但是在 test2() 中,会抛出错误。为什么?

//: Playground - noun: a place where people can play

import UIKit
import AVFoundation

func test()->Void{
    print("Hello")
}

func test1(){//print Hello
    return test()
}

func test2(){// throw error
    return Void
}

Void 是一种类型,因此不能 returned。相反,你想要 return Void 的表示,它是一个空元组。

因此,试试这个,这将编译:

func test()->Void{
    print("Hello")
}

func test1(){//print Hello
    return test()
}

func test2()->Void{// throw error
    return ()
}

test1()

有关为什么可以在需要 return Void 类型的函数中 returned 空元组的更多信息,请在以下 link 中搜索 void:https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Functions.html

在 test1() 中,您没有 return 作废,您的 return 是 return 本身作废的函数 test();

void function test(){
    print("Hello");
}

void function test1(){
       //print Hello
    return test();
}

/* you can not return a type
     func test2(){// throw error
          return Void; 
     } */

void function test2(){
        //code or not
      return test(); //calling test function returns void.
}

希望对您有所帮助!