Frage

Gibt es einen Compiler oder Standalone-Präprozessor die C ++ Dateien und läuft eine Vorlage Expansion Pass nimmt, Generierung neuen C ++ Code mit erweiterten Vorlage instantiations?

ich ein solches Werkzeug in der Mitte der 90er Jahre erinnern, als Vorlagen noch neu und experimentell waren, und der Präprozessor war ein Weg, Template-Programmierung mit Compilern ohne nativen Template Unterstützung zu tun.

Das ist viel komplizierter als ein Makro-Verarbeitungsschritt, da es wahrscheinlich den Code erfordert Analyse und Tokenerstellung würde die Kontexte zu verstehen.

Meine Hoffnung ist, ein solches Instrument zu verwenden, wenn OpenCL-Code zu schreiben. OpenCL ist C ++, aber nicht unterstützt Vorlagen. Ich hoffe, ich Vorlagen schreiben kann, auch einfache wie mit Integer- oder Bool nur Argumente und haben einige Tool die Datei vorab analysieren und durchlaufen und die Verwendung der Vorlagen finden und die Anrufungen erweitern und gib mir neue C ++ Code, die OpenCL-Compiler können verstehen.

Auch ein sehr begrenztes Werkzeug könnte nützlich sein, es muss nicht jede Vorlage Marotte unterstützen, noch mehr Module oder etwas unterstützen.

Die Alternative:. #define Makros überall .. hässliche, unsicher, weniger effizient und weniger vielseitig

War es hilfreich?

Lösung

Comeau C ++ können „kompilieren“ C ++ auf C schließen Dies scheint an Ihr Ziel zu sein, wie OpenCL nicht C ++ unterstützen -. es ist viel näher an C

Andere Tipps

Es gibt kein solches Werkzeug - Vorlagen Teil der Sprache sind, nicht einige Pre-Prozessor übergeben -. Sie vom Compiler verarbeitet werden, ebenso wie andere Code

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top