Ich habe eine Datei in C++, die konstante Definitionen enthält. Ich möchte dieselben Definitionen in einem C# -Projekt verwenden. Da beide Projekte Teil eines größeren Projekts sind, möchte ich, wenn es eine Änderung (Addition/Deletion) in der C++ - Datei gibt, sollte es auch in der entsprechenden C# -Datei reflektiert werden. Ich möchte die 2 Dateien synchron halten. Ich habe mich gefragt, ob es ein Skript/Werkzeug dafür gibt.Konvertieren von einfachem C++ - Code in C# automatisch
Eine umgekehrte Lösung (C# -> C++) würde auch funktionieren.
Klarstellung:
Derzeit ist der Code:
//C++
struct Colors{
static const int Red = 100; //Custom Values are important
static const int Green = 101; }
//C#
public enum Color{ Red = 100; Green =101; }
Jetzt habe ich so eine einzelne Datei haben will, dass alle Änderungen in C++ in C# reflektiert werden (oder umgekehrt), so dass ich kann habe eine einzige Datei über die Projekte für diese Konstanten.
Wie Sie sehen, möchte ich Bündel von Konstanten, die in einer Struktur in C++ definiert sind, einer Aufzählung in C# zuordnen. Ich möchte keine/minimale Änderungen in den oben erwarteten Definitionen machen, da es anderen Code abhängig (in beiden Projekten) auf den obigen Strukturen gibt (aber könnte es tun, wenn es keine gute Möglichkeit gibt, dies im aktuellen Format zu erreichen)
Welche Arten von Konstanten? Am wichtigsten, welche Datentypen sind beteiligt? Ein kurzer Beispielschnipsel wäre ebenfalls hilfreich. –
Toll, dass Sie gefragt haben! Zurzeit lautet der Code: // C++ struct Farben { statisch const int Rot = 100; // Benutzerdefinierte Werte sind wichtig static const int Grün = 101; } Von den oben genannten möchte ich in C#: öffentlichen enum Farbe { Red = 100; Grün = 101; } Wie Sie sehen, möchte ich Bündel von Konstanten, die in einer Struktur in C++ definiert sind, einer Aufzählung in C# zuordnen. Ich möchte keine/minimale Änderungen in den oben erwarteten Definitionen machen, da es anderen Code (in beiden Projekten) auf den obigen Strukturen gibt (aber könnte es tun, wenn es keine gute Möglichkeit gibt, dies im aktuellen Format zu erreichen) –