Share via


Klasse CComDynamicUnkArray

Opmerking

De ATL (Active Template Library) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

In deze klasse wordt een matrix met IUnknown aanwijzers opgeslagen.

Syntaxis

class CComDynamicUnkArray

Leden

Openbare constructors

Naam Description
CComDynamicUnkArray::CComDynamicUnkArray Bouwer. Initialiseert de verzamelingswaarden in NULL en de grootte van de verzameling tot nul.
CComDynamicUnkArray::~CComDynamicUnkArray De destructor.

Openbare methoden

Naam Description
CComDynamicUnkArray::Add Roep deze methode aan om een IUnknown aanwijzer toe te voegen aan de matrix.
CComDynamicUnkArray::begin Retourneert een aanwijzer naar de eerste IUnknown aanwijzer in de verzameling.
CComDynamicUnkArray::clear Hiermee wordt de matrix geleegd.
CComDynamicUnkArray::end Retourneert een aanwijzer naar één na de laatste IUnknown aanwijzer in de verzameling.
CComDynamicUnkArray::GetAt Hiermee haalt u het element op de opgegeven index op.
CComDynamicUnkArray::GetCookie Roep deze methode aan om de cookie op te halen die is gekoppeld aan een bepaalde IUnknown aanwijzer.
CComDynamicUnkArray::GetSize Retourneert het aantal elementen dat de matrix kan opslaan.
CComDynamicUnkArray::GetUnknown Roep deze methode aan om de IUnknown aanwijzer op te halen die is gekoppeld aan een bepaalde cookie.
CComDynamicUnkArray::Remove Roep deze methode aan om een IUnknown aanwijzer uit de matrix te verwijderen.

Opmerkingen

CComDynamicUnkArray bevat een dynamisch toegewezen matrix met IUnknown aanwijzers, elk een interface op een verbindingspunt. CComDynamicUnkArray kan worden gebruikt als parameter voor de sjabloonklasse IConnectionPointImpl .

De CComDynamicUnkArray methoden beginnen en eindigen kunnen worden gebruikt om alle verbindingspunten te doorlopen (bijvoorbeeld wanneer een gebeurtenis wordt geactiveerd).

Zie Verbindingspunten toevoegen aan een object voor meer informatie over het automatiseren van het maken van verbindingspuntproxy's.

Opmerking

Opmerking De klasse CComDynamicUnkArray wordt gebruikt door de wizard Klasse toevoegen bij het maken van een besturingselement met verbindingspunten. Als u het aantal verbindingspunten handmatig wilt opgeven, wijzigt u de verwijzing van CComDynamicUnkArray naar CComUnkArray<n>, waarbij n het aantal vereiste verbindingspunten is.

Requirements

Koptekst: atlcom.h

CComDynamicUnkArray::Add

Roep deze methode aan om een IUnknown aanwijzer toe te voegen aan de matrix.

DWORD Add(IUnknown* pUnk);

Parameterwaarden

Punk
De IUnknown aanwijzer die moet worden toegevoegd aan de matrix.

Retourwaarde

Retourneert de cookie die is gekoppeld aan de zojuist toegevoegde aanwijzer. Gebruik deze cookie om de aanwijzer op te halen uit de matrix met CComDynamicUnkArray::GetAt.

Opmerkingen

De positie waar dit item wordt ingevoegd, is niet noodzakelijkerwijs direct na het laatst ingevoegde item als Remove() dit eerder op deze matrix werd aangeroepen. Gebruik de geretourneerde cookie om betrouwbaar toegang te krijgen tot de ingevoegde aanwijzer. De grootte van de matrix kan worden verhoogd om meer items weer te geven. Gebruik GetSize() dit om de nieuwe grootte op te halen.

CComDynamicUnkArray::begin

Retourneert een aanwijzer naar het begin van de verzameling IUnknown interfaceaanwijzers.

IUnknown**
    begin();

Retourwaarde

Een aanwijzer naar een IUnknown interfaceaanwijzer.

Opmerkingen

De verzameling bevat aanwijzers naar interfaces die lokaal zijn opgeslagen als IUnknown. U cast elke IUnknown interface naar het echte interfacetype en roept deze vervolgens aan. U hoeft niet eerst een query uit te voeren op de interface.

Voordat u de IUnknown interface gebruikt, moet u controleren of deze niet NULL is.

CComDynamicUnkArray::clear

Hiermee wordt de matrix geleegd. Hiermee stelt u de grootte in op 0.

void clear();

CComDynamicUnkArray::CComDynamicUnkArray

De constructor.

CComDynamicUnkArray();

Opmerkingen

Hiermee stelt u de grootte van de verzameling in op nul en initialiseert u de waarden in NULL. De destructor verlost de verzameling, indien nodig.

CComDynamicUnkArray::~CComDynamicUnkArray

De destructor.

~CComDynamicUnkArray();

Opmerkingen

Hiermee worden resources vrijgemaakt die zijn toegewezen door de klasseconstructor.

CComDynamicUnkArray::end

Retourneert een aanwijzer naar één na het laatste element in de toegewezen buffer van de matrix.

Opmerking: dit betekent dat de laatst ingevoegde aanwijzer niet gegarandeerd is end()-1 , omdat de matrix mogelijk niet wordt opgevuld naar capaciteit.

IUnknown**
    end();

Retourwaarde

Een aanwijzer naar een IUnknown interfaceaanwijzer.

CComDynamicUnkArray::GetAt

Hiermee haalt u het element op de opgegeven index op.

IUnknown* GetAt(int nIndex);

Parameterwaarden

nIndex
De index van het element dat moet worden opgehaald.

Retourwaarde

Een aanwijzer naar een IUnknown-interface als er eerder een element is toegevoegd en aanwezig is in deze index; anders NULL.

CComDynamicUnkArray::GetCookie

Roep deze methode aan om de cookie op te halen die is gekoppeld aan een bepaalde IUnknown aanwijzer.

DWORD WINAPI GetCookie(IUnknown** ppFind);

Parameterwaarden

ppFind
De IUnknown aanwijzer waarvoor de bijbehorende cookie is vereist.

Retourwaarde

Retourneert de cookie die is gekoppeld aan de IUnknown aanwijzer of nul als er geen overeenkomende IUnknown aanwijzer wordt gevonden.

Opmerkingen

Als er meer dan één instantie van dezelfde IUnknown aanwijzer is, retourneert deze functie de cookie voor het eerste exemplaar.

CComDynamicUnkArray::GetSize

Retourneert de toegewezen capaciteit van de matrix.

Opmerking: dit is niet hetzelfde als het aantal niet-NULL-elementen dat zich momenteel in de matrix bevindt.

int GetSize() const;

Retourwaarde

Het aantal elementen dat de matrix kan opslaan. GetSize() == end() - begin().

CComDynamicUnkArray::GetUnknown

Roep deze methode aan om de IUnknown aanwijzer op te halen die is gekoppeld aan een bepaalde cookie.

IUnknown* WINAPI GetUnknown(DWORD dwCookie);

Parameterwaarden

dwCookie
De cookie waarvoor de bijbehorende IUnknown aanwijzer is vereist.

Retourwaarde

Retourneert de IUnknown aanwijzer of NULL als er geen overeenkomende cookie wordt gevonden.

CComDynamicUnkArray::Remove

Roep deze methode aan om een IUnknown aanwijzer uit de matrix te verwijderen.

Alle andere elementen zijn ongewijzigd en behouden hun index en cookie.

BOOL Remove(DWORD dwCookie);

Parameterwaarden

dwCookie
De cookie die verwijst naar de IUnknown aanwijzer die uit de matrix moet worden verwijderd.

Retourwaarde

Retourneert TRUE als de aanwijzer wordt verwijderd; anders ONWAAR.

Zie ook

Klasse CComUnkArray
Overzicht van klassen