Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.07.31;
Скачать: CL | DM;

Вниз

Incompatible types   Найти похожие ветки 

 
stenfit   (2011-04-21 15:57) [0]

не компилируется строка в модуле (Incompatible types), хотя в других модулях аналогичные конструкции компилируются нормально.

SetString(A, @PAnsiChar(Item)[iText1Offset], iText1Length);

Item: PLinkerItem;
A: AnsiString;
iText1Offset: SmallInt;
iText1Length: SmallInt;


 
brother ©   (2011-04-21 15:58) [1]

версия делфи?


 
brother ©   (2011-04-21 15:59) [2]

SetString не переназначен?


 
Медвежонок ХМЛ ©   (2011-04-21 15:59) [3]

хотя в других модулях аналогичные конструкции компилируются нормально.

в других модулях юзез другой, вот и компилируется.


 
stenfit   (2011-04-21 16:03) [4]


> brother ©   (21.04.11 15:58) [1]
> версия делфи?


delphi 7

в XE все нормально компилируется.


 
Медвежонок ХМЛ ©   (2011-04-21 16:08) [5]

там где компилируется, там в зоне видимости всего одна SetString.
а там где нет, там две.


 
stenfit   (2011-04-21 16:14) [6]


> там где компилируется, там в зоне видимости всего одна SetString.
> а там где нет, там две.


действительно есть еще один SetString, спасибо.


 
han_malign   (2011-04-22 10:35) [7]

лучше так:
SetString(A, PAnsiChar(Item)+iText1Offset, iText1Length);/CODE>
- для PChar в Delphi - сделано исключение, даже такие конструкции проходят:
(PAnsiChar(Item)+iText1Offset)^

З.Ы. Оператор @ - возвращает нетипизированный указатель(тип Pointer), который молча приводится к любому типизированному указательному типу(D7) - а это потенциальные грабли...


 
Sapersky   (2011-04-22 13:16) [8]

Есть такая настройка компилятора "Typed @ operator". Я, правда, не пробовал, но по идее должна включать типизацию.


 
han_malign   (2011-04-22 16:28) [9]


> Есть такая настройка компилятора "Typed @ operator".

- ключевое слово настройка - все что не обязательно - потенциальные грабли...
Хотя есть:
Syntax   {$T+} or {$T-}
         {$TYPEDADDRESS ON} or {$TYPEDADDRESS OFF}
Default  {$T-}
         {$TYPEDADDRESS OFF}



Страницы: 1 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.009 c
15-1302502293
OW
2011-04-11 10:11
2011.07.31
Как они загружают EXE в temporary internet file и запускают их?


2-1303805704
mefodiy
2011-04-26 12:15
2011.07.31
Как сделать reset MemTable


2-1303704832
petvv
2011-04-25 08:13
2011.07.31
Целая и дробная часть из двух полей


2-1303835617
Vasja123
2011-04-26 20:33
2011.07.31
Как сделать OnClick на Label если Enabled=false


15-1302559355
Германн
2011-04-12 02:02
2011.07.31
InnoSetup переменная {app}