Ах да, предел злого характера. Нвм тогда, вы не должны удалять это, так как это информативно :).
я недавно преобразовал Mathematica в Matlab, и, хотя Matlab обладает большинством полезных функций Mathematica, я не могу понять, как выполнить эквивалент операции отложенного набора Mathematica ': =', которая присваивает переменной значение в ленивая мода.
Например, в Mathematica:
у = 2;
х: = у;
у = 3;
x
дал бы значение x как 3, тогда как единственный способ получить такое же поведение в Matlab:
у = 2;
х = @ () (у);
у = 3;
Икс()
что, технически отвечая на мой вопрос, довольно сложная работа и требует обработки x как функции.
Так есть ли более естественный способ сделать это - Matlab?
РЕДАКТИРОВАТЬ:
мое специальное решение работает только тогда, когда у является полем класса дескриптора, я оставил это вне кода для ясности (это должен быть someclass.y). Желательно, чтобы в ответе на мой вопрос не было этого ограничения, но я бы все же согласился, если бы оно имело место.