![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Есть код.
в отдельном модуле: Код:
type
TMatrixData = array of array of Extended;
TMatrix = class
protected
FData: TMatrixData;
FOrigin: Integer;
...
procedure TForm1.btn1Click(Sender: TObject);
var
A, B:TMatrix;
C,D:TMatrixData;
s:extended;
i,j: Integer;
begin
SetLength(C,3,3) ;
SetLength(D,3,3) ;
for i:=0 to 2 do
for j:=0 to 2 do
begin
C[i,j]:=i+j+2;
D[i,j]:=i*j-3;
end;
A:=TMatrix.Create(C);
B:=TMatrix.Create(D);
S:=C[0,0];
A.Free;
B.Free;
end;По логике вещей в переменной S должно быть значение матрицы С[0,0], а там 1е+300, как вытащить значение из массива? Что происходит? Последний раз редактировалось Admin, 06.01.2012 в 18:00. |
|
#2
|
|||
|
|||
|
давай весь код
|
|
#3
|
|||
|
|||
|
На форум не влез, меньше 300 кб не сделать было. Залил на Депозит:
http://depositfiles.com/files/32huqhhdj Тут чуть другая модификация, но проблема такая же. Запустить MKE.dpr Unit1. Строчки 1143, 1144 с параметром. на 1146 Остановку сделать, чтобы проследить. Пользоваться: 1) геометрия - Ок 2) Расчет - проверка исходных данных |
|
#4
|
|||
|
|||
|
походу это было потому что компилятор соптимизировал эту переменную как нигде не используемую
PHP код:
|
| Этот пользователь сказал Спасибо Pyro за это полезное сообщение: | ||
sidoro89 (07.01.2012)
| ||
|
#5
|
||||
|
||||
|
Ну так правильно, если в переменную записать данные, а потом больше эту переменную не использовать, то Дельфи просто "проигнорирует" её. При этом будет выдано соответствующее сообщение, на которое ТС не обратил внимания.
|
| Этот пользователь сказал Спасибо angvelem за это полезное сообщение: | ||
sidoro89 (07.01.2012)
| ||
|
#6
|
|||
|
|||
|
Всем огромное спасибо. Я уже 2 дня мучаюсь понять не могу, что происходило, а оказывается вот оно что. Спасибо, что объяснили про компилятор делфи. Действительно дальше стал писать код и все заработало. Теперь надеюсь до конца праздников закончу
.Тему можно закрывать. Еще раз спасибо . |