2012-02-05 125 views
0

我,我会非常想表现为这样的数据:结构在C#和构造

LinkedList<T>[] 

但是,你不能这样做仿制药,所以我把它包在一个结构:

public struct SuitList      
    { 
     LinkedList<T> aList; 

     public SuitList() 
     { 
      aList = new LinkedList<T>(); 
     } 
    } 
现在

,在我的课我有

SuitList[] myStructList;  //there is only 4 indices of myStructList 

如何初始化ALIST,我的构造函数的类里面?我想这个如下:

myStructList = new SuitList[4]; 

for(int i = 0; i < 4; i++) 
{ 
    myStructList[i] = new SuitList(); 
} 

编译器给了我一个错误说的Structs不能包含明确的参数构造函数。有没有更好的方法来做到这一点? 感谢您的帮助提前。

+2

这听起来像一个很奇怪的构造。你为什么想要一个链表? – SLaks 2012-02-05 23:38:55

+1

当您尝试使用“LinkedList []'时收到了什么错误?它没有什么问题。 – phoog 2012-02-05 23:44:50

+0

@phoog,你是对的。我错了 – CodeKingPlusPlus 2012-02-06 00:36:52

回答

7

C#不是Java。
你可以用泛型来做到这一点。

要回答你的问题,你应该创建一个类,而不是一个结构。

0

你可以做到这一点,而不必成为一个类。

public struct SuitList<T> 
    { 
     LinkedList<T> aList; 

     public SuitList(int nothing = 0) 
     { 
      aList = new LinkedList<T>(); 
     } 
    }