Wie implementiere ich ein Debugging-Tool in meinem individuellen C++-Editor?



  • Ich habe einen individuellen C++-Editor von Grund auf erstellt und möchte ein Debugging-Tool ähnlich wie GDB integrieren. Ich möchte in der Lage sein, kompilierte .cpp-Dateien zu debuggen und die genauen Werte von ausgegebenen Variablen abzurufen. Gibt es eine Drittanbieter-Bibliothek (verfügbar auf GitHub oder anderswo), die mir dabei helfen kann? Ich benötige eine Lösung, die in meinen individuellen C++-Editor integriert werden kann, da die Verwendung der GDB-Befehlszeile direkt für meinen Anwendungsfall nicht durchführbar ist.

    Deshalb ist es unmöglich, die GDB-Befehlszeile zu verwenden: Es ist unmöglich, eine Funktion in meinem individuellen C++-Editor mit der GDB-Befehlszeile zu verknüpfen.

    Hier ist der Code-Schnipsel aus meinem individuellen C++-Editor, in dem ich diese Debugging-Funktionalität implementieren möchte:

    #include <stdio.h>
    #include <string>
    
    int main() {
        int a = 2;
        int b = 7;
        int c = a + b;
        printf("%d\n", c);
        return 0;
    }
    

    GDB (Befehlszeile)

    (gdb) break 7
    Breakpoint 1 at 0x1400016eb: file test.cpp, line 7.
    (gdb) run
    Starting program: test.exe
    [New Thread 10892.0x38dc]
    
    Thread 1 hit Breakpoint 1, main () at test.cpp:7
    7           int c = a + b;
    (gdb) next
    8           printf("%d\n", c);
    (gdb) print a
    $1 = 2
    (gdb) print b
    $2 = 7
    (gdb) print c
    $3 = 9
    

    Frage: Gibt es eine Drittanbieter-Bibliothek (GitHub-Version) von GDB, mit der ich eine kompilierte .cpp debuggen und den genauen Wert einer ausgegebenen Variable beispielsweise erhalten kann?

    void _Project::run_debug() {
        if (isRunning()) {
            throw string("It's already running."); return;
        }
        _isRunning_debug = true;
    
        // Was sollte der Code hier sein?
    }
    



Anmelden zum Antworten