Bagikan melalui


Kelas CBaseObject

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Tangkapan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine dan Audio/Video Capture di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]

Kelas CBaseObject adalah kelas abstrak untuk mengimplementasikan objek DirectShow. Untuk mengimplementasikan objek Model Objek Komponen (COM), gunakan kelas CUnknown , yang berasal dari CBaseObject.

Metode Kelas Deskripsi
CBaseObject Metode konstruktor.
~CBaseObject Metode destruktor.
ObjekAktif Mengambil jumlah objek aktif.

Keterangan

Sebagian besar kelas dasar DirectShow berasal dari CBaseObject. Kelas ini memberikan bantuan penelusuran kesalahan dengan menjaga hitungan semua objek DirectShow aktif selama durasi. Jumlah objek disimpan dalam variabel anggota statis kelas:

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

Dalam build debug, DLL akan menegaskan jika dibongkar sementara jumlah objek lebih besar dari nol. Ini memudahkan untuk melacak kebocoran yang disebabkan oleh masalah penghitungan referensi.

Konstruktor CBaseObject mengambil satu argumen, nama penelusuran kesalahan untuk objek. Nama ini disimpan dalam tabel global di DLL. Fungsi DbgDumpObjectRegister memformat daftar objek yang aktif di DLL, dan mengirimkannya ke output debug.

Persyaratan

Persyaratan Nilai
Header
Combase.h (termasuk Streams.h)
Pustaka
Strmbase.lib (build ritel);
Strmbasd.lib (build debug)

Lihat juga

Kelas Dasar DirectShow