Member 14154162 Ответов: 3

Как я могу скопировать значения переменных, назначенных в текстовом файле, в мой код c+


Я ввел свои данные в текстовый файл, как показано ниже
а = 1
b = 10
с = 15 и так далее
Я хочу,чтобы эти данные считывались и непосредственно присваивались переменным a,b, c в моем коде C++.
Я хочу написать код, основанный на этом, чтобы всякий раз, когда я изменяю свой текстовый файл, мои переменные автоматически обновлялись при запуске кода.
И я хочу назначить различные типы данных для моих переменных, и эта автоматизация также должна быть выполнена.

Что я уже пробовал:

Мой текстовый файл выглядит так
10
15
30
Затем я прочитал отдельно строку за строкой в своем коде и одновременно назначил ему нужную переменную. Но я хочу, чтобы значения считывались непосредственно в переменные, указанные в моем текстовом файле автоматически.

3 Ответов

Рейтинг:
2

CPallini

Ты мог бы это сделать псевдопеременная Начиная, для простоты, с целочисленных переменных, вы можете использовать std::map<std::string, int> (или std::unordered_map<std::string, int>) хлынуть, карта вы присваиваете имена переменных их целочисленным значениям.

Другим, совершенно другим подходом было бы использование встраиваемого языка сценариев, например Lua (см., например, эту страницу: Программирование на Lua : 25[^]).


Рейтинг:
1

OriginalGriff

В принципе, вы не можете. Вы не можете "изобретать" переменные и, конечно же, не можете изменять типы данных "на лету" в своем коде, потому что после компиляции ваш код на самом деле больше не имеет этих переменных - они оптимизируются в коде и могут стать регистрами или даже полностью удаляться. Даже если это не так, то процесс компиляции выбирает соответствующие функции для работы с конкретным типом данных, и это не может измениться после компиляции.

Вероятно, есть способы достичь желаемой цели, но мы понятия не имеем, что именно вы пытаетесь сделать, поэтому мы не можем предложить их, основываясь на столь скудной информации. Конечно, можно считывать значения из файла и использовать их внутри вашего приложения, но вам нужно подумать о том, что вы пытаетесь сделать более подробно, прежде чем продолжить - в настоящее время вы не идете по правильному пути.


Рейтинг:
1

KarstenK

Это немного необычно, что вы хотите, но вы можете прочитать файл и затем сканировать каждую строку, как в этом случае пример кода и найдите какой-нибудь паттерн типа "А =", а затем переключитесь на а функция scanf для значения.