2010-07-27 5 views
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:Wie man C++ - Code ausführt, ohne es zu kompilieren?

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

+0

Sind Sie sicher, dass das wirklich das ist, was Sie tun möchten? –

+0

Die Anforderung ist nicht klar. Es sieht so aus, als würde jeder in Ihrer C++ - Anwendung einbettbare Interpreter die Frage beantworten ... wenn der Punkt nur TCL vermeiden soll. Auf welchem ​​Betriebssystem läuft Ihre Anwendung? – pascal

+0

Mehrere Duplikate, die http://StackOverflow.com/Questions/1189097/c-interpreter-console-snippet-Compiler und http://StackOverflow.com/Questions/69539/Have-you-used-any-of-the- einschließen c-interpreters-not-compiler, http://stackoverflow.com/questions/2576004/any-cc-to-non-native-bytecode-compiler-interpreters – dmckee

Antwort

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 Unternehmen 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.

+0

Entschuldigung -1 war zufällig - nicht sicher, wie es zu korrigieren ist. –

9

Ich muss zugeben, dass ich dort nicht erwarten zu sein, aber eine Suche folgendes ergeben hat:

Ch

jedoch:

Ch (sprich/ˌ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.

Source

So überprüfen Sie die Eigenschaften deckt die Sie benötigen.

+0

Ich habe es seit Jahren als Kommandozeilen-C-Interpreter verwendet, nur als Programmierer Rechner.Es hat auch eine Reihe von Unix-Tools und eine nette Bash-Shell. Habe es nicht in einem Programm verwendet –

7

Ja. Check out: http://root.cern.ch/drupal/content/cint (es ist auch freie Software).

Abgesehen davon: man kann sicherlich eine bessere Lösung findet als ein C++ Interpreter einbetten, vor allem mit vielen leichtgewichtigen, leicht embedabble Sprachen wie Lua, Python usw.

Verwandte Themen