2012-12-01 213 views
1

我有以下代碼:它尚未完成但但我想知道如何通過代碼中的評論所示的foreach語句訪問類中的成員。我懷疑答案很簡單,我只是沒有看到它。誰能幫我?使用派生列表類訪問基列表類的成員?

public class PassengerList : List<Passenger> 
{ 
    public bool CheckRules() 
    { 

    } 

    private bool DaughtersNotWithFather() 
    { 
     foreach (Passenger p in ???)// how do i access list members in this class with this foreach statment? 
     { // do stuff } 
    } 
} 
+0

永遠繼承是指從列表中選擇類,詞典等,這是通向地獄之路 –

+1

@burning_LEGION你關心解釋,爲什麼? – Maarten

+0

@Maarten我支持的項目有很多列表的後代,首先你不能得到這個類的正常序列化,其次通常一些派生的方法是不需要的,一些必須被禁止,第三你會得到不一致的類:BaseList和DerivedList是不一致,但他們的項目是一致的,你會寫代碼來互動 –

回答

7

你的班級的實例是List<Passanger>(這是可枚舉的)。所以,僅僅通過this關鍵字

foreach (Passenger p in this) 
+1

Bah,你稍微打敗了我。這裏只有一個正確的答案,所以我要刪除我的。 +1 –

+1

謝謝,詹姆斯!其實我們幾乎在同一時間回答.. –

+1

沒有後顧之憂 - 在SO上的好答案更重要,多個答案說同一件事。 =) –

相關問題