Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2009.12.06;
Скачать: [xml.tar.bz2];

Вниз

Как реализован синглетон 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.004 c
15-1254991631
ocean
2009-10-08 12:47
2009.12.06
Когда я пытаюсь быстро печатать,


15-1254978520
@!!ex
2009-10-08 09:08
2009.12.06
При покупки VDS просит ввести настройки сервера.....


2-1255696453
FEV
2009-10-16 16:34
2009.12.06
События для динамических кнопок...


15-1252098770
Кто б сомневался
2009-09-05 01:12
2009.12.06
Мультиязык в проектах на Delphi 2009


15-1254960767
brother
2009-10-08 04:12
2009.12.06
На что направлен этот развод?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский