0
給定一個帶有#! /usr/bin/octave -q
的Octave m文件標題,函數可以在這個文件中定義嗎?或者唯一的方法是調用另一個文件中定義的函數?函數可以在shebang可執行GNU Octave文件中定義嗎?
給定一個帶有#! /usr/bin/octave -q
的Octave m文件標題,函數可以在這個文件中定義嗎?或者唯一的方法是調用另一個文件中定義的函數?函數可以在shebang可執行GNU Octave文件中定義嗎?
是的,他們可以。唯一的是第一個Octave語句不能是一個函數定義,這就是爲什麼許多Octave程序將以1;
開頭的原因。但是,我的經驗是,大多數Octave程序需要一個包,所以第一個語句可以只是所述包的加載。
下面是一個例子倍頻程序:
#!/usr/bin/env octave
## Do not forget your license
pkg load foo;
pkg load bar;
1; # not really necessary because of the pkg load statements above
function foobar()
## this function does something amazing
endfunction
function main (argv)
disp (argv);
endfunction
main (argv());
你有沒有嘗試過,看看會發生什麼? –
其實我是這麼做的,我很高興能報告,但結果很奇怪,我寧願不要混淆陳述。 (好吧,解決方案導致與原來的行爲一樣怪異:) – nightcod3r