Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.26;
Скачать: CL | DM;

Вниз

Интерфейс   Найти похожие ветки 

 
Paha_   (2002-12-15 15:12) [0]

Возможно ли имея указатель на интерфейс, получить указатель на класс, который реализует это интерфейс?


 
VaS ©   (2002-12-15 15:51) [1]

TYourClass(InterfaceRef).


 
Юрий Федоров ©   (2002-12-15 16:22) [2]

А мне кажется что теоретически нельзя.
Он же может быть реализован на любом языке программирования


 
Dimka Maslov ©   (2002-12-15 16:57) [3]

Если класс, реализующий интерфейс написан в Delphi и интерфейс - единственный - то можно.

function GetSoleInterfaceObject(I: IUnknown): TObject;
var
P: Integer;
begin
P := Integer(I);
Inc(P, $fffffd2c); // проверено в D5
Result := TObject(P)
end;


Таким образом может быть получен указатель на объект, в котором реализован единственный интерфейс. Дальше из него можно вытаскивать что угодно.

Если класс унаследован от нескольких интерфейсов, то определить указатель на объект не представляется возможным.






Страницы: 1 вся ветка

Текущий архив: 2002.12.26;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
14-86184
Zhirnov Maxim
2002-12-07 13:23
2002.12.26
Версия СТЭМа ФАИТ песни Belle из оперы Noterdam-De-Pari


1-86020
Новичок
2002-12-16 15:08
2002.12.26
Ребята помогите! Срочно!!! Горю по курсовой!!!


1-85921
vladnt
2002-12-13 15:34
2002.12.26
печать на принтере заштрихованного полигона


14-86146
Anatoly Podgoretsky
2002-12-06 07:37
2002.12.26
Именинники 6 декабря


1-85974
Relict
2002-12-15 14:10
2002.12.26
класс