Показать сообщение отдельно
  #3  
Старый 06.11.2008, 16:07
anton_ anton_ вне форума
Прохожий
 
Регистрация: 06.11.2008
Сообщения: 2
Репутация: 10
Сообщение

С помощью указателей можно обратиться к адресу переменной или ее значению, а к самой переменной - нет, особенно если переменная - массив.

пример:
Код:
// описание
const
  Name_Risk : array [0..4] of string = ('Fire', 'Disasters', 'Water', 'Malicious', 'Impact');
var
  Fire_Value_1, Fire_Value_2, ... :array of real;
  temp, temp_1: string;
  i, j: integer;
  p: ^string;

...
begin
  ...
  for i:= 0 to 4 do
  begin
    if Name_Risk[i]=temp then
    begin
       // допустим в переменной temp_1 содержится имя массива Fire_Value_1, как теперь взять какой либо элемент этого массива?
       temp_1:=Name_Risk[i]+'Value_'+j;
       // p:=@temp_1; в указатель записывается адрес переменной temp_1
       // p^ - данная операция возвращает значение переменной temp_1, а как обратиться к массиву?

    end;

  end;
  ...
end;

Все-равно, спасибо за ответ. Все-таки характерная особенность Object Pascal - четкая типизированность данных не всегда бывает удобной при работе.
Ответить с цитированием