2016-12-02 20 views
0
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の新機能です。私はtodoリストを作成するためのYouTubeチュートリアルに従っていましたが、var lists = listという行は私にエラーを与えています。誰がこれに間違っていることを認識していますか?ありがとうございました。Swift、タイプ 'list.Type'には添え字メンバーはありません

答えて

3

の配列を作成したい場合は、正しい配列初期化子構文は

var lists = [list]() 

しかし、あなたのコードは意志である

var lists = list() 

または var lists = [list()]

var lists = list[]() 

を置き換えますstartDateが宣言されているためコンパイルできません赤の場合はStringですが、Dateのパラメータが渡されます。現在Dateとして

宣言startDate - スウィフト3暗黙のmemberwise初期化子が必要なため、あなたはとにかく初期化子を変更する必要が

var startDate = Date() 

またはaddParty

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

を変更で新しいネイティブ日付構造体です合格するすべてパラメータ

PS:クラス、構造体、列挙型が大文字で始まるSwift命名規則を考慮してください。

PPSは:チュートリアルでは、ミスが良いのチュートリアルを探してすべてのこと初心者を示唆している場合

+0

ありがとうございました! Dateと私は何ができますか?私は研究しましたが、ウェブサイト上の日付ではなく、NSDateについてしかありませんでした。日付タイプはどのように使用しますか? – Eric

+0

私は大括弧の中にリストを入れると申し訳ありませんが、lists.appendは動作しません。 – Eric

+0

答えを更新しました – vadian

-1

listは構造体であり、下付き文字で要素を与えることはできません。ちょうどあなたがリスト

関連する問題