2012-06-25 70 views
0

如何製作一個陣列,其中包含myClass類型的400個元素,並將不同的參數傳遞給每個元素?如何初始化一個自定義類型的數組?

我有兩個類:mainClassmyClass。我想在mainClass中創建數組。你可以看到myClass需要3個參數。

MyClass的:

namespace prj1 
{ 
    class myClass 
    { 
     public myClass(int A, int B int C) 
     { 
      ... 
      ... 
      ... 
     } 
    } 
} 

mainClass:

namespace prj1 
{ 
    class mainClass 
    { 
     public myClass[] myVar = new myClass[400]; 

     public mainClass(int y, int m, int d) 
     { 
      ... 
      ... 
      ... 
     } 
    } 
} 

如果非要用setValue初始化它們我該怎麼辦呢?我應該如何通過3個參數?

for (int i = 0; i < 400; i++) 
      { 
       myVar.SetValue(object Value, i); 
      } 
+0

我沒有看到在myClass類中定義的公共方法SetValue? –

+1

@JohnGathogo:SetValue是一個數組類的方法... – digEmAll

+0

@digEmAll:謝謝 –

回答

1

試試這個,

for (int i = 0; i < 400; i++) 
{ 
    myVar[i]=new MyClass(y,m,d); 
} 

//或

for (int i = 0; i < 400; i++) 
{ 
    myVar.SetValue(new MyClass(y,m,d),i); 
} 
+0

tnx。在setValue方法中,我錯過了「新」關鍵字。很多。 –

1
for (int i = 0; i < 400; i++) 
{ 
    myClass tempObject = new myClass(y,m,d); 
    myVar.SetValue(tempObject,i) 
} 
5

你爲什麼不只是構建你已經在循環中的每個實例?

for(int i = 0; i < myVar.Length; i++) 
{ 
    myVar[i] = new myClass(arg1, arg2, arg3); 
} 

你有一個合適的構造函數已經和你在一個循環中初始化... 1 + 1 == 2,我們不要試圖重新發明輪子好嗎?

+0

你是對的。謝謝 –

相關問題