TVarRec Problem
-
Hi.
.pas
SinC := CompileExpr(ParseExpr('sin(x)/x',['x']),tyPass1V);.hpp
extern PACKAGE Expression __fastcall ParseExpr(const AnsiString S, const System::TVarRec * Variables, const int Variables_Size)/* overload */;Wie muss die Delphi Zeile mit dem ['x'] in CBuilder5 ausschauen?
Ich peile das nicht ganz
-
Keine der es weiss? Ich suche mich schon mit google tot, aber alles was ich probiere ergiebt ein Error.

-
versuch mal folgendes
TVarRec v[] = {"x"}; String s = "sin(x)/x"; ParseExpr(s, v, ARRAYSIZE(v)-1);
-
Hey danke! Das scheint zu funktionieren.
Leider kann ich es nicht engültig testen, da ich an nächsten Punkt scheitere.
Ist Delphi zu einfach oder C zu schwer?
Delphi:
ExprFunc1V = function(const x: Extended): Extended; SinC : ExprFunc1V; SinC := CompileExpr(ParseExpr('sin(x)/x',['x']),tyPass1V); // parse and compile expression Result := SinC(1.0); // evaluate the Expression FreeFunc(@SinC); // Free Function ShowMessage('Result = '+FloatToStr(Result));Da wird aus dem Ganzen eine Funktion erstellt.
Das ist cool, aber wie macht man das denn im CBuilder?
-
Am besten lernst du erstmal die Grundlagen von C++.
Dann kannst du irgendwann versuchen Delphi und C++ zu vergleichen.
-
Danke, das hilft sehr viel weiter.
-
Bitte schön. Gern geschehen ...
