2012-02-27 84 views
-2

有沒有在運行時在c#中創建對象的方法?在運行時創建對象

爲簡單起見,假設下面的問題.. 如果我有這個類..

class student { 
string name; 
int ID;} 

可以說,我寫一個程序,它從用戶以學生的編號(如15)程序然後應該從學生類創建15個對象,並要求用戶填寫每個學生的姓名和ID。

我想知道的是如何在運行時創建對象?

+0

這就是新命令的用途。 – 2012-02-27 19:49:43

+1

您不需要將C#添加到標題的末尾。這就是我們有標籤的原因。 – cadrell0 2012-02-27 19:51:19

回答

1

首先你應該考慮一個對象來保存你要創建的所有實例。 也許List< Student > .. 然後,您可以使用for-loop創建您喜歡的每個單一實例(使用new關鍵字)。 在循環內部,您可以獲取用戶輸入以設置實例值(學生的姓名和ID)。

6

有沒有辦法在c#中運行時創建對象?

既然你知道你要在編譯時創建,你可以使用一個List<Student>表示,你可以添加元素對這些對象的動態集合的對象的類型。然後在運行時,您可以讓用戶輸入要創建的學生數量,然後您將遍歷該數字,並使用列表中的Add方法向其添加新元素。

就創建對象實例而言(您的情況爲Student),您可以簡單地使用new關鍵字調用其constructor

如果您想要創建的對象的類型在編譯時未知,您可能需要求助於Reflection以便在運行時動態創建它們的實例。

而在你提出問題之前,答案是否定的,我不會爲你編寫代碼,直到你顯示一些努力來完成這項家庭作業。

+0

+1未完成Noha的作業;) – Makotosan 2012-02-27 20:21:03