2010-03-22 92 views
2

我需要創建一個類,該類還將兩個事件列表初始化爲新的空列表。我不確定這是什麼問題,但我知道如何創建一個列表以及如何創建構造函數。我創建了2個列表,現在我應該創建構造函數。下面是我列出的一個:在構造函數中初始化列表

List<Person> organize = new List<Person>(); 

如何初始化這兩個事件列表中構造新的列表?

+0

需要一些更多信息。就目前來看,是的,這沒有意義。張貼更大的代碼塊? – 2010-03-22 21:00:21

+3

語言障礙+作業問題=失敗? – 2010-03-22 21:01:10

+0

有人把它標記爲家庭作業......你永遠不知道。 – 2010-03-22 21:04:06

回答

0
List<Person> organize = new List<Person>(); 

這將創建一個空列表。你可以說得更詳細點嗎?我覺得有些細節不見了。

也許你的意思是這樣的?

public class TestClass 
{ 
     List<Person> personList; 

     public TestClass() 
     { 
      personList = new List<Person>(); 
     } 

} 
11

根據我可以從你的問題中收集的信息,你有一個有兩個列表的類。

您的要求說,在您的課堂內,您需要將列表初始化爲空列表。

下面的例子(唯一的區別是,我從來沒有初始化列表,當他們宣佈,但在類的構造函數代替):

public class YourClass 
{ 
    List<Person> organize; 
    List<Person> anotherOrganize; 

    // constructor 
    public YourClass() 
    { 
     // initialize the two lists to empty lists 
     organize = new List<Person>(); 
     anotherOrganize = new List<Person>(); 
    } 
} 
+1

不錯,乾淨的例子 – 2010-03-22 21:03:50

0

我想你問的是,爲什麼構造函數你的類應該實例化兩個列表(?)。你是對的

List<Person> organize = new List<Person>(); 

將實例化列表。但如此:

List<Person> organize; 
public MyClass() 
{ 
organize = new List<Person>(); 
} 

我理解這個問題嗎?

2

如果您的列表聲明爲字段(成員變量直接在類中)並且在其聲明中初始化,您不應該在構造函數中重新初始化它。初始化表達式將被編譯器自動移動到構造函數中。

1

如果這是家庭作業,您的教師可能會告訴您在構造函數中而不是在聲明點處初始化列表。

class MyClass 
{ 
    List<Person> organize; 

    public MyClass() 
    { 
     this.organize = new List<Person>(); 
    } 
} 
相關問題