gpt4 book ai didi

arrays - 您可以将函数存储在数组中并根据需要调用它们吗?

转载 作者:行者123 更新时间:2023-11-30 10:46:25 24 4
gpt4 key购买 nike

我是编程新手(1 周),所以这可能是一个愚蠢的问题,但这里是......

使用 Swift(在 XCode 程序上)我定义了一些函数(Func1、Func2 等),它们采用整数数组,并交换数组中的某些值。我尝试创建一个新的、单独的数组,其中包含 Func1、Func2 等,然后我想根据随机生成的数字(例如 10204),根据需要应用函数。

例如,数字 10204 会将 Func1、Func0、Func2、Func0、Func4 应用于数组。

我曾尝试查看此网站上的其他问题以寻求想法,但尽管进行了多次尝试,但似乎没有任何效果。这就是我想要做的 - 这两个函数操作名为“cubePos”的数组中的整数


func UC(){
(cubePos[0] , cubePos[17])
=
(cubePos[17] , cubePos[19])
}

func DC(){
(cubePos[26] , cubePos[41])
=
(cubePos[41] , cubePos[43])
}

当我自己应用时,这两个功能都工作得很好。这就是我接下来需要做的,定义一个函数数组:

var arrOfFuncs = [UC , DC]

然后,给定一个数字(例如 10110),对“cubePos”执行相当于:

DC
UC
DC
DC
UC

当我输入类似的内容时:

arrOfFuncs[0]

我希望代码将 UC() 应用于数组“cubePos”,但似乎什么也没有发生,尽管 UC() 在手动输入代码时工作正常。

希望有人能帮忙!

最佳答案

您尚未发布您在问题中使用的代码,因此我创建了一个有效的基本示例。您可以尝试使用下面的代码。

func one() {
print("Hello 1")
}
func two() {
print("Hello 2")
}

let arr = [one, two]

arr[0]

"10101".forEach {
arr[Int(String($0))!]()
}

关于arrays - 您可以将函数存储在数组中并根据需要调用它们吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55682668/

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