Вниз
Скачать: CL | DM;

Как реализован синглетон TRttiContext?   Найти похожие ветки 

← →
Kolan ©   (2009-10-08 10:54) [0]

В Делфи 2010 TRttiContext — синглетон. Но я не могу понять как реализован этот паттерн.

TRttiContext = record
 private
   FContextToken: IInterface;
 public
   class function Create: TRttiContext; static;
   procedure Free;
   
   function GetType(ATypeInfo: Pointer): TRttiType; overload;
   function GetType(AClass: TClass): TRttiType; overload;
   function GetTypes: TArray<TRttiType>;
   function FindType(const AQualifiedName: string): TRttiType;
   function GetPackages: TArray<TRttiPackage>;
 end;
...

class function TRttiContext.Create: TRttiContext;
begin
 Result.FContextToken := nil;
end;

procedure TRttiContext.Free;
begin
 FContextToken := nil;
end;



Нету привычного GetInstance, объект вроде нигде не создается. Как это работает? Объясните?


← →
Kolan ©   (2009-10-08 10:56) [1]

Тьфу, это запись. class function в записи выглядит странно.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
1-1227270584
parasolka
2008-11-21 15:29
2009.12.06
Ширина ячеек в DBGrid.


15-1255008109
ocean
2009-10-08 17:21
2009.12.06
Что можно предпринять, если не ставится драйвер?


15-1254751574
pasha_golub
2009-10-05 18:06
2009.12.06
Хочу пример работы с istream в C++


2-1255580012
uno-84
2009-10-15 08:13
2009.12.06
Создание файла .DBF нужной версии


11-1208955774
andreil
2008-04-23 17:02
2009.12.06
Как указать цвет пикселя 8-битному изображению?




   Наверх