Swift,类型 'list.Type' 没有下标成员


import UIKit
var party: Party = Party()
struct list
{
    var id = "id"
    var startDate = "11/11/1111"
    var name = "name"
    var address = "address"
}
class Party: NSObject
{
    var lists = list[]()    <-- this one has "Type 'list.Type' has no subscript members"
    func addParty(startDate:Date, name:String, address:String)
    {
        lists.append(list(startDate:startDate, name:name, address:address))
    }
}

嗨,我是Swift和iOS Xcode的新手。我正在遵循YouTube教程,以列出待办事项列表,但是它说var lists = list的行给我错误。有人认识到这是什么问题吗?谢谢。

正确的数组初始化器语法是

var lists = [list]() 

但是,您的代码不会编译,因为startDate被声明为String,但是传递了Date参数。

startDate声明为当前Date-这是Swift 3

中的新本机日期结构
var startDate = Date()

或更改addParty

func addParty(startDate:String, name:String, address:String)

您必须无论如何都必须更改初始化器,因为隐式成员的初始化器需要通过 ash parameters

lists.append(list(id:"id", startDate:startDate, name:name, address:address))

ps:请考虑迅速的命名惯例,即课程,结构和枚举以大写字母开头。

pps:如果教程建议所有新手错误都在寻找更好的教程

您的list是构造,无法通过下标给您元素。只需替换

var lists = list[]()

var lists = list()

var lists = [list()]如果要创建列表数组

最新更新