gpt4 book ai didi

swift - 如何在不运行的情况下在 Swift 中定义函数

转载 作者:搜寻专家 更新时间:2023-11-01 06:10:09 25 4
gpt4 key购买 nike

从找到的简单 C 程序开始 here on stackoverflow ,我在 Swift 中又做了一次,这里是代码:

import Foundation

// variables and constants:

var dice1, dice2: UInt32
var score, scoreToWin, diceSum: Int
dice1 = 0
dice2 = 0
diceSum = 0

// functions:

func rollDice() ->Int {
dice1 = arc4random() % 6 + 1
dice2 = arc4random() % 6 + 1
diceSum = Int(dice1 + dice2)
println("\(diceSum)")
return diceSum
}

// main:

score = rollDice()

println("\(dice1) \(dice2) \(score)")

switch score {
case 7, 11:
println("score=\(score)\nYou WIN")
case 2, 3, 12:
println("score=\(score)\nYou LOOSE")
default:
println("You have to roll a \(score) to WIN")
do {
scoreToWin = score
diceSum = rollDice()
if diceSum == 7 { println("You LOOSE") }
else if diceSum == scoreToWin { println("You WIN") }
} while (diceSum != scoreToWin && diceSum != 7)
}

这是一个可能的输出:

  • 6
  • 3 3 6
  • 您必须掷出 6 才能获胜
  • 6
  • 你赢了
  • 程序以 exit 0 结束

我没想到第一行输出,因为第一行表明函数 rollDice() 在定义时运行。如何在不实际运行函数的情况下定义它?

最佳答案

score = rollDice() 会打印出你看到的 6 因为 println("\(diceSum)") 你是在 rollDice 方法中执行。

声明一个方法不会运行它。不是 swift,也不是我能想到的任何其他语言。

关于swift - 如何在不运行的情况下在 Swift 中定义函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27523476/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com