Wie kann C ++ - Code ausgeführt werden, ohne ihn zu kompilieren?

7

Um Code an eine mit C ++ erstellte Anwendung zu übergeben, habe ich einen C ++ - Quellcode verwendet, der als TCL-Interpreter fungierte. So konnte ich eine Datei erstellen, in die einige XML-Daten und in einige Tags auch ein TCL-Code eingab. Schließlich ist es möglich, die Datei zu lesen, eine Struktur zu konfigurieren und die TCL-Skript-Snippets aus der XML-Datei an geeigneten Stellen auszuführen. Um C ++ und TCL nicht gleichzeitig zu verwenden, frage ich folgendes:

Gibt es einen Open-Source-C ++ - Code, der einen C ++ - Code ohne Kompilierung ausführen kann? Mit anderen Worten gibt es einen C ++ - Interpreter.

    
Narek 27.07.2010, 20:47
quelle

3 Antworten

14

CINT

  

Was ist CINT?

     

CINT ist ein Interpreter für C- und C ++ - Code. Es ist z.B. für Situationen, in denen eine schnelle Entwicklung wichtiger ist als die Ausführungszeit. Mit einem Interpreter wird der Kompilierungs- und Verknüpfungszyklus drastisch reduziert, was eine schnelle Entwicklung ermöglicht. CINT macht C / C ++ - Programmierung sogar für Teilzeit-Programmierer angenehm.

     

CINT ist in C ++ selbst geschrieben, mit etwas weniger als 400.000 Zeilen Code. Es wird in der Produktion von mehreren Firmen im Bankwesen, von integrierten Geräten und sogar von der Spielumgebung und natürlich von ROOT verwendet und ist damit der Standardinterpreter für eine große Anzahl von Hochenergiephysikern auf der ganzen Welt.

    
SigTerm 27.07.2010, 20:51
quelle
9

Ich muss zugeben, dass ich nicht erwartet habe, dass es einen gibt, aber eine Suche hat folgendes ergeben:

Ch

Allerdings:

  

Ch (ausgesprochen / ˌsiːeɪtʃ /) ist ein plattformübergreifender C- und C ++ - Interpreter. Es wird von SoftIntegration, Inc. für C / C ++ Benutzer zur Verfügung gestellt. Ch ist nützlich für Skripting, Shell-Programmierung, 2D / 3D-Plotting, numerische Berechnungen und kann in andere Anwendungen eingebettet werden, um Scripting-Fähigkeiten hinzuzufügen. Ch kann sowohl für die serverseitige als auch für die clientseitige Webentwicklung verwendet werden. Es läuft unter Windows, Linux, Mac OS X und einigen Versionen von Unix. Ch unterstützt C90- und C99-Hauptfunktionen, unterstützt jedoch keine vollständigen C ++ - Funktionen.

Quelle

Überprüfen Sie, ob es die benötigten Funktionen enthält.

    
ChrisF 27.07.2010 20:49
quelle
7

Ja. Schau dir das an: Ссылка (es ist auch freie Software).

Abgesehen davon: Sie können sicherlich eine bessere Lösung finden als die Einbettung eines C ++ - Interpreters, insbesondere mit weit leichteren, leicht einzubettenden Sprachen wie Lua , Python , usw.

    
Greg S 27.07.2010 20:50
quelle

Tags und Links