Zitat aus der System.pas
Zitat:
Delphi-Quellcode:
type
IUnknown = IInterface;
Hatte vorhin wohl mehr an IDispatch gedacht.
Von der Speicherverwaltung her das Gleiche, außer dass man quasi virtuelle Methoden aufrufen kann, also wenn man das Interface verwendet.
(IDispatch in einem Variant\OleVariant)
Die frage ist nur wird das IUnknown auch initialisiert VSC seite.
So wie das bei IInterface in Delphi ist.
also.
Ich habe diese Funktionen in der art in meinem Header nicht.
Code:
virtual HRESULT __stdcall QueryInterface(const
GUID &IID, void **Obj)
{
return TInterfacedObject::QueryInterface(IID, (void *)Obj);
virtual ULONG __stdcall AddRef()
{
return TInterfacedObject::_AddRef();
}
// ...
virtual ULONG __stdcall Release()
{
return TInterfacedObject::_Release();
}
Wird das in VSC automatisch gemacht wenn ich IUnknown als DatenTyp übergebe?
gruss