“types”task.Type“没有下标成员”在Swift中的错误

这段代码给了我一个错误; types“task.Type”没有下标成员

这是我的代码:

struct task { var name = "Un-Named" var desc = "Un-Described" } class TaskManager: NSObject { var tasks = task[]() func addTask(name: String, desc: String){ tasks.append(task(name: name, desc: desc)) } } 

方括号应该在结构名称的周围。 像这样[task]() ,就像你做[String]

在方括号内有一个对象意味着: 创build一个这种types的数组

()意思是: 创build一个新的实例(如副本)这个对象 。 所以结构就像一个模板。 例如,如果你需要两个任务:

 let myTask = task() let sistersTask = task() 

你正试图创build一个任务数组,它应该是:

 var tasks = [task]() 

你有你的types之外的数组。