Вниз
Скачать: CL | DM;

Проблема с типизованным файлом!   Найти похожие ветки 

 
Elun ©   (2009-04-27 09:15) [0]

Вот такие две записи я создал:
type
zadan=record
 vopr:string;
 answ:array[1..4] of string;
 vern:integer;
   end;
   
tezt=record
     namme:string;
     quest:string;
         countt:integer;
end;

При компиляции выдаёт ошибки:
Build
 [Error] wizardd.pas(59): Type "zadan" needs finalization - not allowed in file type
 Строка 59: fil:file of zadan;
 [Error] wizardd.pas(60): Type "tezt" needs finalization - not allowed in file type
 Строка 60: spisok:file of tezt;
 [Error] wizardd.pas(132): Incompatible types
 Строка 132: append(spisok);
 [Fatal Error] Tes.pas(169): Could not compile used unit "wizardd.pas"

Использовал Delphi 7.
Пытался создать на Pascal ABC такие записи, всё работает. WTF?


 
Anatoly Podgoretsky ©   (2009-04-27 09:23) [1]

> Elun  (27.04.2009 9:15:00)  [0]

Нет смысла использовать указатели в типизированых записях


 
Elun ©   (2009-04-27 09:28) [2]


> Нет смысла использовать указатели в типизированых записях

К сожалению я не понял, что вы сказали. почему он выдаёт ошибки?


 
Rembo   (2009-04-27 09:31) [3]

Если актуально, попробуй zadan=packed record, массив замени на 4 строки answ1..4, и возле каждого "string" поставь "[252]"
)


 
Elun ©   (2009-04-27 09:33) [4]

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


 
Rembo   (2009-04-27 09:35) [5]

packed ненадо, массив оставь, а количество символов в строках тоже оставь)


 
Anatoly Podgoretsky ©   (2009-04-27 09:51) [6]


> дело в том, что я видел программу, в которой запись как
> у меня, тоже есть массивы, но там всё работает.

Максимальная длина строки?


 
sniknik ©   (2009-04-27 10:09) [7]

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

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



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

Скачать: CL | DM;



Память: 0.46 MB
Время: -0.973 c
3-1222314069
AE
2008-09-25 07:41
2009.06.14
поврежден файл.db -как восстановить


2-1240904224
Sowyer
2009-04-28 11:37
2009.06.14
Как зделать закладки в программе?


15-1238762557
JB2
2009-04-03 16:42
2009.06.14
Относятся ли программисты к пролетариату?


15-1239274951
Гектор
2009-04-09 15:02
2009.06.14
Почему не работает функция sql


15-1239023987
Немо
2009-04-06 17:19
2009.06.14
Что за .. размер текстового файла, непонятки




   Наверх