CBaseList 類別
[與此頁面相關的功能 DirectShow是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。
CBaseList方法會實作 abtract 清單。 衍生自CBaseList 的 CGenericList類別範本提供類型檢查,以及比CBaseList類別更簡單的介面。
CBaseList類別會在 Microsoft Foundation Classs (MFC) 程式庫中的CObList類別模型化。 清單中的位置會以 POSITION 結構表示。 呼叫端不應該存取 POSITION 結構的內部成員;將它視為清單節點的指標。 物件在清單中的位置會維持有效狀態,直到刪除物件為止。
此清單不需要它包含的物件支援。 它不會對 物件執行儲存體管理或複製。 物件可以位於多個清單中。
這個類別中方法的大約一半會對單一物件採取動作。 這些方法具有尾碼 - 方法名稱中的 I。 其他方法會針對整個清單採取行動。 例如, CBaseList::AddAfter 方法會將清單附加至另一個清單。 單一物件作業會在失敗時傳回 POSITION 值或 Null 。 如果成功或FALSE,清單作業會傳回TRUE。
受保護的成員變數 | Description |
---|---|
m_Count | 清單中的專案數。 |
m_pFirst | 清單中第一個節點的指標。 |
m_pLast | 清單中最後一個節點的指標。 |
保護方法 | Description |
GetNextI | 擷取位於指定位置的專案,並將位置往前移。 |
GetI | 擷取位於指定位置的專案。 |
FindI | 擷取保留指定專案的第一個位置。 |
RemoveHeadI | 移除清單中的第一個專案。 |
RemoveTailI | 移除清單中的最後一個專案。 |
RemoveI | 移除位於指定位置的專案。 |
AddTailI | 將專案加入清單結尾。 |
AddHeadI | 將專案新增至清單的前面。 |
AddAfterI | 在指定的位置後面插入專案。 |
AddBeforeI | 在指定的位置之前插入專案。 |
公用方法 | Description |
CBaseList | 建構函式方法。 |
~ CBaseList | 解構函式方法。 |
RemoveAll | 從清單中移除所有節點。 |
GetHeadPositionI | 擷取清單中第一個專案的位置。 |
GetTailPositionI | 擷取清單最後一個專案的位置。 |
GetCountI | 擷取清單中的專案數目。 |
下一步 | 擷取清單中的下一個位置。 |
昨日 | 擷取清單中的先前位置。 |
AddHead | 在此清單的前面插入另一個清單。 |
AddTail | 將另一個清單附加至此清單的結尾。 |
AddAfter | 在指定的位置後面插入清單。 |
AddBefore | 在指定的位置之前插入清單。 |
MoveToTail | 分割清單,並將前端部分附加至另一個清單的結尾。 |
MoveToHead | 分割清單,並將尾部分插入另一個清單的前端。 |
Reverse | 反轉清單的順序。 |
規格需求
需求 | 值 |
---|---|
標頭 |
|
程式庫 |
|