大家好,
我試圖將一個函數傳遞給並行分配函數的本地內存空間
它不起作用,因為JMP告訴我F有2個參數,但給出了0個參數。我怎樣才能解決這個問題?
JMP按值將參數傳遞給函數。如果我將參數指定為變量(例如,存儲您定義的用戶功能的變量),它將無法正常工作。例如,
Names Default to Here( 1 );
f1 = Function( { x }, 2*x );
f2 = Function( { f, x }, 2 * f( x ) );
f2( f1, 3 );
我犯了同樣的錯誤。
我不知道您要做什麼,但是如果您使用表達式而不是用戶函數,它可能會起作用。
我正在回答的問題可能是或可能不是您要問的問題:我認為您已經寫了以下內容:
f=function(...);
parallel assign({ g = f }, ... )它將嘗試評估g = f的右側並產生您提到的錯誤。
這樣的事情會起作用:
parallel assign( { g = function(...) }, ... )看到 https://community.jmp.com/t5/Discussions/How-to-pass-a-function-to-Parallel-Assign/mp/230728