Delphi Lazarus не может найти универсальные варианты использования

Почему я не могу использовать Generics.Collections или же Generics.Default или даже просто Generics в Лазарь?

Uses
  Generics.Collections;

Uses
  System.Generics.Default;

Uses
  System.Generics.Collections;

Uses
  System.Generics.Default,
  System.Generics.Collections;

Uses
  SysUtils,
  Generics;    

Не удается найти Generics.Collections, используемые uTest инспектора проекта.
Не удается найти Generics.Defaults, используемые uTest инспектора проекта.
Не удается найти универсальные элементы, используемые uTest инспектора проекта.

3 ответа

Решение

Lazarus - это IDE для компилятора FreePascal с открытым исходным кодом. Никто из них не имеет ничего общего с Дельфи. FreePascal - это совершенно отдельный компилятор Pascal, чем тот, который использует Delphi.

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

Но что касается Generics, FreePascal предоставляет свой собственный синтаксис и реализацию Generics, которые отличаются от Generics Delphi и не совместимы с ними (на самом деле, поддержка Generics в стиле Delphi была добавлена ​​в FreePascal 2.6, но "по-прежнему может и не быть 100"). % совместим с Delphi. Также ознакомьтесь с возможностями языка delphi, которых нет в fpc - Generics Syntax).

Прочитайте документацию FreePascal для получения более подробной информации о его разновидности Generics:

http://wiki.freepascal.org/Generics

http://www.freepascal.org/docs-html/ref/refch8.html

System.Generics.Default а также System.Generics.Collections модули доступны только в Delphi, их нет в FreePascal. Тем не менее, существует сторонняя реализация этих модулей, доступная для FreePascal.

Библиотека Generics.Collections (с модулем Generics.Defaults) была добавлена ​​в ствол FPC как пакет rtl-generics в r34229. Последняя версия предварительно скомпилированной магистрали FPC (с Generics.Collections) для магистрали Win32 + Lazarus доступна по адресу http://newpascal.org/. Репозиторий Generics.Collections ( https://github.com/dathox/generics.collections) будет по-прежнему использоваться для обслуживания (его следует часто синхронизировать со стволом FPC).

Я рекомендую вам использовать пакет Generics.Collections, сделанный Maciej Izak.

Другие вопросы по тегам