Подтвердить что ты не робот

Matlab получает строку, содержащую имя переменной

В Matlab, как я могу получить строку, содержащую "GRUMPY", с учетом следующего объявления:

  GRUMPY = 500;

Это обычно называют отражением в других языках программирования, но я не могу найти его пример в Matlab.

4b9b3361

Ответ 1

MATLAB не предоставляет встроенные функции для этого, но есть способ обхода, используемый здесь

По существу, вам нужно создать свою собственную функцию для этого. Воспользуйтесь функциональностью Matlab для получения имени переменной INPUT ARGUMENT для функции.

т.е.

function out = varname(var)
  out = inputname(1);
end

Тогда

GRUMPY = 500;
name = varname(GRUMPY)

предоставит вам то, что вы хотите.

Ответ 2

Если я правильно понимаю, вы должны попробовать

who GRUMPY 

или

which GRUMPY