Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 28.08.2015, 14:31
Mishko Mishko вне форума
Прохожий
 
Регистрация: 28.08.2015
Сообщения: 28
Версия Delphi: Delphi XE5
Репутация: 10
Смущение Incompatible types

Уважаемые профи, подскажите плиз.
При компиляци проекта возникает ошибка

[dcc32 Error] MainForm.pas(9466): E2010 Incompatible types: 'FWZipZLib.TCompressionLevel' and 'System.ZLib.TCompressionLevel'

Строка Item.CompressionLevel := TCompressionLevel(Byte(2));

Действительно описания типов в юнитах не соответствуют. Привожу к единообразию как в System.ZLib, но ошибка все равно возникает.

Первоначальные объявления классов:

юнит FWZipZLib

TCompressionLevel = (
clNone,
clFastest,
clDefault,
clMax,
clLevel1,
clLevel2,
clLevel3,
clLevel4,
clLevel5,
clLevel6,
clLevel7,
clLevel8,
clLevel9
);

юнит System.ZLib

TZCompressionLevel = (zcNone, zcFastest, zcDefault, zcMax);

// CG: Define old enum for compression level
TCompressionLevel = (clNone = Integer(zcNone), clFastest, clDefault, clMax);

В описании в System.ZLib пытался менять Integer(zcNone) на Byte(zcNone), не помогло
Ответить с цитированием
  #2  
Старый 28.08.2015, 14:45
icWasya icWasya вне форума
Местный
 
Регистрация: 09.11.2010
Сообщения: 499
Репутация: 10
По умолчанию

типы считаются совместимыми, если только они описаны так

Type B = A;
Или один тип является наследником другого.

А поскольку перечисления не наследуются,
придётся делать явное приведение

Item.CompressionLevel := FWZipZLib.TCompressionLevel(2);
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 02:01.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025