[問題] class能否做成自製型別

看板C_Sharp (C#)作者 (dabid')時間9年前 (2015/09/16 14:09), 9年前編輯推噓2(203)
留言5則, 3人參與, 最新討論串1/2 (看更多)
小弟最近無意間看到類別多型可以自製成類似list的東西,不知道觀念對不對 還有想自製型別要如何做 class clsA<T> where T : clsB { private List<clsB> mB = new List<clsB>(); public T this[int Index] { get {return (T) mB[Index];} set {mB[Index] = value; } } public void Add(clsB b) { ........ } } class clsB { public int X; } 這樣我可以直接給實作後的東西使用Index作讀取 clsA AAA = new clsA(); clsB BBB = new clsB(); BBB.X = 5; AAA.Add(BBB); 然後對AAA[Index]的X作讀寫 return AAA[Index].X; AAA[Index].X = 10; 我現在想直接賦予AAA值或直接讀取AAA然後回傳一個我想要的值 AAA = 10; return AAA; 這個class要如何做,還是不能做 類似宣告int int iii; iii = 10; string sss = iii.ToString(); -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.250.200.85 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1442383750.A.8FE.html

09/16 23:34, , 1F
看不懂你的需求點在哪
09/16 23:34, 1F

09/16 23:35, , 2F
應該說為什麼要這樣做? 還是單純只是想知道能不能做
09/16 23:35, 2F

09/17 09:39, , 3F
AAA是一個Array AAA=10 是一個什麼樣的概念??
09/17 09:39, 3F

09/17 09:39, , 4F
你能不能講清楚一點你的問題
09/17 09:39, 4F
抱歉我不知道要如何說明白 大致上是我想要直接把值給實作出來的class而非給class內部的變數 class clsBird { private string Name; } 現在我想在任意時間點直接做強轉型給值 class clsBird Bird = new Bird(); ... Bird = (clsBird)"ThirtyCM"; 而非只能在一開始給建構值 clsBird Bird = new clsBird("ThirtyCM"); 因為不是很懂強轉型,弄半天弄不出來,所以上來請教大家 ※ 編輯: dabiddabid (60.250.200.85), 09/18/2015 11:07:14

09/19 05:22, , 5F
operator
09/19 05:22, 5F
文章代碼(AID): #1L-GU6Z- (C_Sharp)
文章代碼(AID): #1L-GU6Z- (C_Sharp)