Командная строка C ++: вывод значения программной переменной - PullRequest
0 голосов
/ 19 октября 2011

Я пишу раскрывающуюся консоль для моего приложения. Предположим, я хочу вывести значение переменной myvar с помощью следующей команды:

]/get myvar

Есть ли лучший способ, чем создать карту, чтобы на выходе было

return mymap[argv[0]]; ?

Другими словами, могу ли я связать входной массив символов "myvar" с переменной с именем myvar, не делая это вручную для всех переменных в программе.

1 Ответ

1 голос
/ 19 октября 2011

Краткий ответ:

Длинный ответ:

Пффф, ни за что!После того, как ваш кусок кода собран как двоичный файл, не существует такой вещи, как имя переменной.Просто некоторые указатели, значения в стеке и т. Д. ...

Если вы хотите реализовать что-то подобное, я бы порекомендовал вам обратиться к библиотеке сценариев ( Lua , дляпример) и вручную отобразить некоторые переменные, чтобы вы могли читать / изменять эти переменные с помощью сценариев.В этом случае консольный ввод - это в основном то, что вы вводите в механизм сценариев.

Это может быть хорошим справочным материалом .

ОБНОВЛЕНИЕ:

На самом деле, только что нашел проект под названием Lua Console .
Похоже, он больше не поддерживается, но это не значит, что он не будет работать.

...