CBaseObject-Klasse

Die CBaseObject-Klasse ist eine abstrakte Klasse zum Implementieren von DirectShow-Objekten. Zum Implementieren Component Object Model (COM)-Objekten verwenden Sie die CUnknown-Klasse, die von CBaseObject abgeleitet wird.

Klassenmethoden BESCHREIBUNG
CBaseObject Konstruktormethode.
~CBaseObject Destruktormethode.
ObjectsActive Ruft die Anzahl der aktiven Objekte ab.

Bemerkungen

Die meisten DirectShow-Basisklassen werden von CBaseObject abgeleitet. Diese Klasse bietet Unterstützung beim Debuggen, indem die Anzahl aller DirectShow-Objekte zur Laufzeit aktiv ist. Die Objektanzahl wird in einer klassen statischen Membervariablen gespeichert:

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

In Debugbuilds gibt die DLL zu, wenn sie entladen wird, während die Objektanzahl größer als 0 (null) ist. Dadurch können Lecks, die durch Probleme mit der Verweiszählung verursacht werden, leichter nachverfolgt werden.

Der CBaseObject-Konstruktor verwendet ein Argument, einen Debugnamen für das Objekt. Dieser Name wird in einer globalen Tabelle in der DLL gespeichert. Die DbgDumpObjectRegister-Funktion formatiert eine Liste der in der DLL aktiven Objekte und sendet sie an die Debugausgabe.

Requirements (Anforderungen)

Anforderung Wert
Header
Combase.h (include Streams.h)
Bibliothek
Strmbase.lib (Einzelhandels-Builds);
Strmbasd.lib (Debugbuilds)

Weitere Informationen

DirectShow-Basisklassen