爲了描述清楚我的意思, 我只是在這裏給出一個例子:如何在.m文件中使用參數作爲全局變量?
function y = f(x,a)
global a
y = f1(x);
function y = f1(x)
global a
y = x + a;
在這裏,我想「一」被用來作爲一個全局變量,可以通過子功能「F1」被稱爲變量計算$ x + a $。 (我的目的是減少參數的變換)
但是這個函數不起作用,除非我定義一個新變量'b'來恢復'a'的值。
現在的問題是,如何在不定義新變量的情況下直接創建'a'全局變量?
在所有應有的尊重,這是比全球變數更糟糕。只有當沒有其他選項可行時才應使用「eval」,「evalin」和「assignin」。你的解決方案可以工作,但代碼將難以維護。 – Egon 2011-05-11 21:18:01
是的,我原則上同意。在某種程度上,OP需要將'a'的值傳遞給函數。我的意願是明確地通過它。 – mor22 2011-05-12 11:45:24