Sto cercando di utilizzare Octave con Visual C++.Octave C++ e VS2010
Ho scaricato octave-3.6.1-vs2010-setup-1.exe
. Creato un nuovo progetto, aggiunto la cartella include
all'ottava per includere il percorso, octinterp.lib
e octave.lib
al percorso lib e ho aggiunto la cartella Octave bin
come directory in esecuzione.
Il programma viene compilato e funziona bene, tranne feval
funzione che causa l'eccezione:
Microsoft C++ eccezione: octave_execution_exception alla posizione di memoria 0x0012faef
e Octave lato:
Operazione di ridimensionamento non valida o assegnazione ambigua a un elemento di matrice fuori limite.
Cosa sto sbagliando?
codice per un standalone program:
#include <octave/octave.h>
#include <octave/oct.h>
#include <octave/parse.h>
int main(int argc, char **argv)
{
if (octave_main (argc, argv, true))
{
ColumnVector NumRands(2);
NumRands(0) = 10;
NumRands(1) = 1;
octave_value_list f_arg, f_ret;
f_arg(0) = octave_value(NumRands);
f_ret = feval("rand",f_arg,1);
Matrix unis(f_ret(0).matrix_value());
}
else
{
error ("Octave interpreter initialization failed");
}
return 0;
}
Grazie in anticipo.
Ho chiesto sulla loro mailing list sembra che Octave consenta solo il collegamento in runtime con \ MD flag. – user629926