Как получить доступ к объекту, используя строковое значение - PullRequest
0 голосов
/ 11 октября 2018

У меня есть файл, который я хотел прочитать и применить новые значения к объекту.Как использовать имя строки для поиска нужного объекта и обновления значения.Обратите внимание, что содержимое файла file.txt может содержать более 1000 строк, и порядок будет меняться, поэтому я не могу использовать оператор if для проверки каждого условия.

file.txt
>A 1
>B 2
>D 5

.

desired result
Sample.A := 1;
Sample.B := 2;
Sample.D := 5;

1 Ответ

0 голосов
/ 11 октября 2018

Один из способов - объявить ваш объект массивом, индексированным по типу перечисления, значения которого являются идентификаторами.Например, если идентификаторы являются символами от A до Z, вы можете определить массив следующим образом:

subtype Index is Character range 'A'..'Z';
type Collection is array(Index) of Integer;
Idx : Index;
Value : Integer;
The_Collection : Collection;

while not End_Of_File(Input_File) loop
   Get(Idx);
   Get(Value);
   Skip_Line;
   The_Collection(Idx) := Value;
end loop;

Конечно, вам нужно будет «с» соответствующими пакетами ввода / вывода.

...