Hi Leuts,
ich hab hier folgenden Code :
Delphi-Quellcode:
Function ErstellFunction(Value:
String): Pointer;
Var
p: PVariable;
Begin
new(p);
p^.Funktionsaufrufzeiger := False;
setlength(p^.uebergabeparameter, 0);
p^.
Name := '
const';
p^.Line := -1;
If (Value = '
true')
Or (Value = '
false')
Then Begin
p^.Typ := bool;
If Value = '
true'
Then
p^.Value := 1
Else
p^.Value := 0;
End
Else Begin
p^.Typ := int;
Try
p^.Value := strtoint(Value);<-- Hier sollte die
Exception geworfen werden ..
Except
SolverErrorString := SolverErrorString + #13#10'
Error "' + Value + '
" is not bool or int ( maybe "' + value + '
is a not declared variable.';
Raise;
End;
End;
result := p;
End;
Wenn ich dieser Function den Wert Value = 'x1' übergebe dann wirft sie keine
Exception und ich versteh nicht warum.
Anbei noch ein Screenshot vom Debugger.
Hat jemand ne Idee was ich da machen kann, oder hab ich einen Compilerswitch vergessen ?
Das Irrwitzige ist übergebe ich z.b. y1 oder auch nur r dann wird eine
Exception geworfen. nur bei x1 nicht.
Er wandelt das übrigens zu 1 um