Что означают угловые скобки после имени класса в объявлении переменной? - PullRequest
3 голосов
/ 21 марта 2012

Я некоторое время программировал на Delphi, но никогда не сталкивался с синтаксисом, который я нашел в вопросе о SO.Был такой синтаксис:

var Dic: TDictionary<Integer,string>;

Я никогда не видел <type, type>.Что это значит?Когда и где это можно использовать?Я ничего не нашел, так как Google пропускает символы типа '<', '>'.

Ответы [ 2 ]

7 голосов
/ 21 марта 2012

Это синтаксис, используемый для обобщений. Обобщения позволяют вам определять классы, параметризованные по типу.

Вы можете прочитать все об этом в Delphi документации . Вам также может пригодиться страница Википедия . Это дает более широкий обзор концепции общего программирования.

6 голосов
/ 21 марта 2012

Во многих языках это обычно отображение или создание шаблона, Delphi называет эти обобщения, и пример их объявления можно увидеть здесь :

type
  TPair<Tkey,TValue> = class   // TKey and TValue are type parameters
    FKey: TKey;
    FValue: TValue;
    function GetValue: TValue;
  end;

function TPair<TKey,TValue>.GetValue: TValue;
begin
  Result := FValue;
end;

То, что определяет ваш конкретный пример, это словарь, который будет отображать целые числа в строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...