Zitat von
Dax:
Edit2: Fehler beseitigt, neue Version
So langsam wirds
Merkwürdigerweise gibts massive Probleme, wenn PreSolve false ist. Da knallt selbst
Delphi-Quellcode:
Parser:=TExCQParser.Create;
Parser.SolveMode:=smVM;
Parser.PreSolve:=false;
Parser.RegisterVariable('Range');
Parser.SetVariable('Range',[10]);
Parser.Parse('1*2');
ShowMessage(FloatToStr(Parser.Solve.X));
Parser.Free;
Schreibt man es statt dessen in Klammern: (1*2) dann klappt es.
Hier scheint es also ein generelles Problem zu geben, wenn PreSolve false ist. Da ich den Variablen erst später einen Wert zuweise, aber die Formeln schon bei Programmstart kompiliere, bin ich auf PreSolve false angewiesen