Function 如何使Swift参数/内容全局化?
我是用Swift编程语言创建的,我想知道如何使shoppingList数组成为全局数组,以便从其他函数访问它?如何使参数item1和item2全局化?以下是代码,感谢您的帮助:Function 如何使Swift参数/内容全局化?,function,variables,swift,Function,Variables,Swift,我是用Swift编程语言创建的,我想知道如何使shoppingList数组成为全局数组,以便从其他函数访问它?如何使参数item1和item2全局化?以下是代码,感谢您的帮助: func createList(item : String, item2: String){ var shoppingList = [item, item2] } createList("apples", "peaches") func printList(){ println("You need to get \(
func createList(item : String, item2: String){
var shoppingList = [item, item2]
}
createList("apples", "peaches")
func printList(){
println("You need to get \(shoppingList[0]) and \(shoppingList[1]).") //Here is the error
}
printList()
您可以将变量放在函数的作用域之外,或者让tour函数返回一个数组,然后将其传递回
打印列表
以下是从函数返回值的方式:
func returnSomething() -> String // Returns a string
不过,我强烈建议您研究一下。正如陈慧琳所建议的,依靠全局变量传递信息通常是不明智的。Bryan建议您返回数组并将其传递给其他人,如下所示:
func createList(item1: String, item2: String) -> [String] {
let shoppingList = [item1, item2]
return shoppingList
}
func printList(shoppingList: [String]) {
if shoppingList.count >= 2 {
println("You need to get \(shoppingList[0]) and \(shoppingList[1]).")
} else {
println("Expected 2 items in shopping list")
}
}
let list = createList("apples", "peaches")
printList(list)
全局变量几乎总是一个坏主意。只需返回数组并四处传递我如何返回数组?你能给出答案中的代码吗?这确实帮助并帮助我理解如何返回数组。我正在学习苹果在Swift上制作的iBook,但我还没有达到功能,正在测试一些东西,但无论如何,谢谢!