|  | 
 
 | 
| 
 | |||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны | 
|  | 
|  | Опции темы | Поиск в этой теме | Опции просмотра | 
| 
			 
			#1  
			
			
			
			
		 | |||
| 
 | |||
|  Что-то с переменной У меня в проге объявлен тип Код:      EpurData = record
      X: real;
      M, Q: real;
     end;
     ArrEpurData = array of EpurData;
     TEpurRez = packed record
      L, Ra, Rb, Ma, Mb, H: real;
      Mmax, MXmax, Mmin, MXmin: real;
      Qmax, QXmax, Qmin, QXmin: real;
      X1_N: dArrRe;
      Epura: ArrEpurData;
     end;
var EpurRez: TEpurRez;Почему, когда я передаю переменную в качестве параметра в процедуру присоединеного модуля Rasch, происходит что-то странное, у переменной почему-то обнуляются некоторые поля: L, Ma, Mb???? | 
| 
			 
			#2  
			
			
			
			
		 | |||
| 
 | |||
|   "packed record" давно не в моде. Упаковка в памяти данных не актуальна, да и доступ к ним медленный. Тип Real в Delphi тоже оставлен для соместимости и его применять не рекомендуется. Real меняется на Double, "packed record" на "record" и все будет в порядке, если нет других подводных камней при присвоении значений полям стурктуры. Обратите внимаение на то что в структуре есть динамические массивы, а применяется "packed record". В какое месиво превратиться упакованная структура, если во время выполнения ее размеры постоянно изменяются. Последний раз редактировалось san-46, 22.09.2008 в 10:37. |