2016-09-16 3 views
0

Учитывая, что заголовок файла Octave m с #! /usr/bin/octave -q, может ли быть определена функция внутри этого файла ?, или единственный способ сделать это - вызвать функции, определенные в другом файле?Могут ли функции быть определены в исполняемом исполняемом файле GNU Octave?

+3

Вы пробовали и посмотреть, что происходит? –

+0

На самом деле я это сделал, и было бы хорошо, если бы я сообщил об этом, но результат был настолько странным, что я предпочел не добавлять путаницы в утверждение. (Ну, решение оказалось таким же странным, как и исходное поведение :) – nightcod3r

ответ

4

Да, они могут. Единственное, что первый оператор 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()); 

 Смежные вопросы

  • Нет связанных вопросов^_^