CBaseObject 類別

[與此頁面 相關的功能 DirectShow是舊版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayerIMFMediaEngine音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議盡可能重寫使用舊版 API 的現有程式碼,以使用新的 API。]

CBaseObject類別是實作 DirectShow 物件的抽象類別。 若要實作元件物件模型 (COM) 物件,請使用衍生自CBaseObjectCUnknown類別。

類別方法 Description
CBaseObject 建構函式方法。
~CBaseObject 解構函式方法。
ObjectsActive 擷取使用中物件的計數。

備註

大部分的 DirectShow 基類衍生自 CBaseObject。 這個類別會藉由讓所有 DirectShow 物件在執行時間保持作用中的計數,來提供偵錯協助。 物件計數會儲存在類別靜態成員變數中:

class CBaseObject
{
private:
    static LONG m_cObjects;  // Total number of objects active. 
/* ... */
};

在偵錯組建中,當物件計數大於零時,DLL 會判斷提示是否已卸載。 這可讓您更輕鬆地追蹤參考計數問題所造成的流失。

CBaseObject建構函式會採用一個引數,這是物件的偵錯名稱。 此名稱會儲存在 DLL 的全域資料表中。 DbgDumpObjectRegister函式會格式化 DLL 中作用中的物件清單,並將它傳送至偵錯輸出。

規格需求

需求
標頭
Combase.h (包含 Streams.h)
程式庫
Strmbase.lib (零售組建) ;
Strmbasd.lib (偵錯組建)

另請參閱

DirectShow 基類