2013-04-09 38 views
0

我有這樣的代碼添加Vector2列出

public List<Vector2> alienPosition = new List<Vector2>(); 

    for (int x = 0; x < alienPosition.Count; x++) 
     { 
      alienPosition[x].Add(new Vector2((x * 20) + 50, 20)); 
     } 

,它給我添加犯規一個參數錯誤。我究竟做錯了什麼?

+0

如果要在特定索引處插入項目,請使用List .Insert(index,T);否則它是列表 .Add(T); – Deukalion 2013-04-09 08:37:50

回答

1
public List<Vector2> alienPosition = new List<Vector2>(); 
    int someCount = 10; 
     for (int x = 0; x < someCount; x++) 
      { 
       alienPosition.Add(new Vector2((x * 20) + 50, 20)); 
      } 

卸下[I]索引以及用於循環> 0

的[i]的需要的簡單陣列指定結束條件。這個列表是一個更高層次的數據結構,使用方便的方法將元素直接添加到列表中。它是列表API的一部分,能夠添加新條目而無需爲新條目指定索引。它會將新條目添加到列表的末尾。

+0

謝謝。你能解釋一下爲什麼解決它嗎?我認爲索引器是需要的for循環知道在哪裏添加新的矢量 – 2013-04-09 05:16:12

+0

添加了解釋 – TGH 2013-04-09 05:22:20

+0

好吧,我明白了。現在我遇到了一個問題,for循環實際上並沒有向列表添加任何內容。當我將代碼放置在循環外的for循環中時,它會添加一個外部變量。 – 2013-04-09 05:24:23