Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.12.06;
Скачать: 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 вся ветка

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

Наверх




Память: 0.46 MB
Время: 0.008 c
15-1255101350
Дмитрий С
2009-10-09 19:15
2009.12.06
Как получить нормально распределенное случаное число от 0 до 1 и


15-1255012142
Leonid Troyanovsky
2009-10-08 18:29
2009.12.06
Похороните меня за плинтусом


2-1255524674
madmech@yandex.ru
2009-10-14 16:51
2009.12.06
Как убрать скроллбар у DBGrid


15-1255027446
Piter
2009-10-08 22:44
2009.12.06
Word не может открыть файл более 32 MB?


2-1256102379
St1m
2009-10-21 09:19
2009.12.06
Доступ к расшаренной папке