Bagikan melalui


Kelas CComDynamicUnkArray

Kelas ini menyimpan array IUnknown pointer.

Sintaks

class CComDynamicUnkArray

Anggota

Konstruktor Publik

Nama Deskripsi
CComDynamicUnkArray::CComDynamicUnkArray Konstruktor. Menginisialisasi nilai koleksi ke NULL dan ukuran koleksi menjadi nol.
CComDynamicUnkArray::~CComDynamicUnkArray Destruktor.

Metode Publik

Nama Deskripsi
CComDynamicUnkArray::Add Panggil metode ini untuk menambahkan penunjuk IUnknown ke array.
CComDynamicUnkArray::begin Mengembalikan penunjuk ke penunjuk pertama IUnknown dalam koleksi.
CComDynamicUnkArray::clear Mengolah array.
CComDynamicUnkArray::end Mengembalikan penunjuk ke satu melewati penunjuk terakhir IUnknown dalam koleksi.
CComDynamicUnkArray::GetAt Mengambil elemen pada indeks yang ditentukan.
CComDynamicUnkArray::GetCookie Panggil metode ini untuk mendapatkan cookie yang terkait dengan pointer tertentu IUnknown .
CComDynamicUnkArray::GetSize Mengembalikan jumlah elemen yang dapat disimpan array.
CComDynamicUnkArray::GetUnknown Panggil metode ini untuk mendapatkan pointer yang IUnknown terkait dengan cookie tertentu.
CComDynamicUnkArray::Remove Panggil metode ini untuk menghapus IUnknown penunjuk dari array.

Keterangan

CComDynamicUnkArray menyimpan array IUnknown pointer yang dialokasikan secara dinamis, masing-masing antarmuka pada titik koneksi. CComDynamicUnkArray dapat digunakan sebagai parameter ke kelas templat IConnectionPointImpl .

Metode CComDynamicUnkArray dimulai dan berakhir dapat digunakan untuk mengulangi semua titik koneksi (misalnya, ketika peristiwa ditembakkan).

Lihat Menambahkan Titik Koneksi ke Objek untuk detail tentang mengotomatiskan pembuatan proksi titik koneksi.

Catatan

Catatan Kelas CComDynamicUnkArray digunakan oleh wizard Tambahkan Kelas saat membuat kontrol yang memiliki Titik Koneksi. Jika Anda ingin menentukan jumlah Titik Koneksi secara manual, ubah referensi dari CComDynamicUnkArray ke CComUnkArray< n >, di mana n adalah jumlah titik koneksi yang diperlukan.

Persyaratan

Header: atlcom.h

CComDynamicUnkArray::Add

Panggil metode ini untuk menambahkan penunjuk IUnknown ke array.

DWORD Add(IUnknown* pUnk);

Parameter

Punk
Penunjuk IUnknown untuk ditambahkan ke array.

Tampilkan Nilai

Mengembalikan cookie yang terkait dengan pointer yang baru ditambahkan. Gunakan cookie ini untuk mengambil pointer dari array dengan CComDynamicUnkArray::GetAt.

Keterangan

Posisi di mana item ini disisipkan tidak akan selalu langsung setelah item terakhir disisipkan jika Remove() sebelumnya dipanggil pada array ini. Gunakan cookie yang dikembalikan untuk mengakses pointer yang disisipkan dengan andal. Ukuran array mungkin ditingkatkan untuk mengakomodasi lebih banyak item. Gunakan GetSize() untuk mendapatkan ukuran baru.

CComDynamicUnkArray::begin

Mengembalikan penunjuk ke awal kumpulan IUnknown penunjuk antarmuka.

IUnknown**
    begin();

Tampilkan Nilai

Penunjuk ke IUnknown penunjuk antarmuka.

Keterangan

Koleksi berisi pointer ke antarmuka yang disimpan secara lokal sebagai IUnknown. Anda melemparkan setiap IUnknown antarmuka ke jenis antarmuka nyata dan kemudian memanggil melaluinya. Anda tidak perlu mengkueri antarmuka terlebih dahulu.

Sebelum menggunakan IUnknown antarmuka, Anda harus memeriksa bahwa antarmuka tersebut bukan NULL.

CComDynamicUnkArray::clear

Mengolah array. Mengatur ulang ukuran menjadi 0.

void clear();

CComDynamicUnkArray::CComDynamicUnkArray

Konstruktor.

CComDynamicUnkArray();

Keterangan

Mengatur ukuran koleksi ke nol dan menginisialisasi nilai ke NULL. Destruktor membebaskan koleksi, jika perlu.

CComDynamicUnkArray::~CComDynamicUnkArray

Destruktor.

~CComDynamicUnkArray();

Keterangan

Membebaskan sumber daya yang dialokasikan oleh konstruktor kelas.

CComDynamicUnkArray::end

Mengembalikan penunjuk ke satu-melewati elemen terakhir dalam buffer array yang dialokasikan.

Catatan: ini berarti bahwa pointer yang terakhir dimasukkan tidak dijamin berada di end()-1 karena array mungkin tidak diisi ke kapasitas.

IUnknown**
    end();

Tampilkan Nilai

Penunjuk ke IUnknown penunjuk antarmuka.

CComDynamicUnkArray::GetAt

Mengambil elemen pada indeks yang ditentukan.

IUnknown* GetAt(int nIndex);

Parameter

nIndex
Indeks elemen yang akan diambil.

Tampilkan Nilai

Pointer ke antarmuka IUnknown jika elemen sebelumnya ditambahkan dan ada di indeks ini; jika tidak NULL.

CComDynamicUnkArray::GetCookie

Panggil metode ini untuk mendapatkan cookie yang terkait dengan pointer tertentu IUnknown .

DWORD WINAPI GetCookie(IUnknown** ppFind);

Parameter

ppFind
Penunjuk IUnknown di mana cookie terkait diperlukan.

Tampilkan Nilai

Mengembalikan cookie yang terkait dengan IUnknown penunjuk, atau nol jika tidak ada penunjuk yang IUnknown cocok yang ditemukan.

Keterangan

Jika ada lebih dari satu instans penunjuk yang sama IUnknown , fungsi ini mengembalikan cookie untuk yang pertama.

CComDynamicUnkArray::GetSize

Mengembalikan kapasitas array yang dialokasikan.

Catatan: ini tidak sama dengan jumlah elemen non-NULL yang saat ini berada dalam array.

int GetSize() const;

Tampilkan Nilai

Jumlah elemen yang dapat disimpan array. GetSize() == end() - begin().

CComDynamicUnkArray::GetUnknown

Panggil metode ini untuk mendapatkan pointer yang IUnknown terkait dengan cookie tertentu.

IUnknown* WINAPI GetUnknown(DWORD dwCookie);

Parameter

dwCookie
Cookie yang diperlukan penunjuk terkait IUnknown .

Tampilkan Nilai

Mengembalikan penunjuk IUnknown , atau NULL jika tidak ada cookie yang cocok yang ditemukan.

CComDynamicUnkArray::Remove

Panggil metode ini untuk menghapus IUnknown penunjuk dari array.

Semua elemen lainnya tidak berubah dan mempertahankan indeks dan cookie mereka.

BOOL Remove(DWORD dwCookie);

Parameter

dwCookie
Cookie yang mereferensikan IUnknown penunjuk yang akan dihapus dari array.

Tampilkan Nilai

Mengembalikan TRUE jika penunjuk dihapus; jika tidak FALSE.

Lihat juga

Kelas CComUnkArray
Gambaran Umum Kelas