2013-04-05 52 views
0

空引用異常我有以下代碼:與ListViewItem的

class Album 
{ 
    private string name; 

    private Music[] musics; 
    private const int MAX_MUSICS = 100; 
    private ListViewItem[] back; 

    public ListViewItem[] GetTitles() 
    { 
     for (int i = 0; i < MAX_MUSICS; i++) 
      if (musics[i].Title != null) 
       back[i] = new ListViewItem(musics[i].Title); 

     return back; 
    } 
} 

在生產線back[i] = new ListViewItem(musics[i].Title),我得到一個NullReferenceException。 我不知道爲什麼,因爲在debuger音樂[我] .Title有一個價值,甚至檢查。

+0

你初始化你的背部陣列? – maszter 2013-04-05 19:59:29

回答

0

在向它輸入元素之前,您需要知道有多少元素的「後」陣列將具有,例如,

public ListViewItem[] GetTitles() 
    { 
     back = new ListViewItem[MAX_MUSICS]; // initialize array 

     for (int i = 0; i < MAX_MUSICS; i++) 
      if (musics[i].Title != null) 
       back[i] = new ListViewItem(musics[i].Title); 

     return back; 
    } 

另外,還要確保你的MAX_MUSICS並不比的音樂數組的大小大,否則就會打成了另一個異常