Probleme mit constanten, header, includier-blalbla



  • Wie? Man kann alles 1 zu 1 abschreiben? Kein extern davor? Funktioniert das dann auch bei Strukturen?



  • BigGreenFoot schrieb:

    Wie? Man kann alles 1 zu 1 abschreiben? Kein extern davor? Funktioniert das dann auch bei Strukturen?

    BigGreenFoot.cpp: 1: Fehler: Fehlender Bezugspunkt
    


  • Es tut mir Leid für meine Engstirnigkeit, ich suche schon seit tagen nach einer Antwort und finde sie nicht. Daher bitte ich um Verständnis. Google ist nur eine Maschine, ein Mensch (kann) einem entgegen kommen. Die Sache mit den Headern hab ich glaub einigermaßen verstanden. Ich bräuchte bitte nur noch ein Beispiel von einem Quelltext, in dem eine Struktur in zwei Headern eingesetzt wird, damit ich mir mal ein Bild machen kann.



  • BigGreenFoot schrieb:

    Es tut mir Leid für meine Engstirnigkeit, ich suche schon seit tagen nach einer Antwort und finde sie nicht. Daher bitte ich um Verständnis. Google ist nur eine Maschine, ein Mensch (kann) einem entgegen kommen. Die Sache mit den Headern hab ich glaub einigermaßen verstanden. Ich bräuchte bitte nur noch ein Beispiel von einem Quelltext, in dem eine Struktur in zwei Headern eingesetzt wird, damit ich mir mal ein Bild machen kann.

    Mein Kommentar sollte nicht heißen, dass du mir auf den Nerv gehst. Ich wollte damit nur ausdrücken, dass ich deine Frage absolut nicht verstanden habe.

    Leider weiß ich nicht so genau, was du brauchst...

    A.h

    #ifndef A_H
    #define A_H
    
    class A
    {
        //...
    };
    
    #endif //A_H
    

    B.h

    #ifndef B_H
    #define B_H
    
    #include "A.h"
    
    class B : public A
    {
        //...
    };
    
    #endif //B_H
    

    C.h

    #ifndef C_H
    #define C_H
    
    #include "A.h"
    
    class C : public A
    {
        //...
    };
    
    #endif //C_H
    

    Also: Du kannst die Struktur in einen dritten Header auslagern. Oder aber du bindest den einen Header in den anderen ein. Du kannst schauen, ob eine Vorwärtsdeklaration ausreicht. Letztendlich hängt die "optimale" Headerstruktur immer von dem ab, was du machst.



  • Ok das war schlecht formuliert, ich bräuchte einen Beispiel Quelltext, in dem 2 Header ihre eigene Struktur haben, die in der jeweils anderen eingesetzt wird. Was bedeutet das man eins der Strukturen 2x definieren/deklarieren muss.
    Am besten zeig ich euch mein naja „Ding“ (Quelltext), mit dem ich das Problem habe (unter anderem) . Ich stell ihn als Download bereit, den zum anzeigen wäre es zu fiel. Bitte schaut euch das „Ding“ für mich durch, und nörgelt so fiel ihr könnt, damit ich weiß wie/was ich besser machen soll. Das „Ding“ sollte ein Brainfuck Interpreter werden. Allerdings ohne STL, mit einem Haufen Rechtschreibfehler, und noch mehr Speicherlecks.

    Probleme hab ich gerade bei Parser.h, und loop.h, beide haben eine Struktur, die bei der jeweils anderen eingesetzt wird. jump_save soll den letzten Rücksprungpunkt speichern, und sign_posi, die Position des Parserzeigers in einem String.
    https://sites.google.com/site/csbackround/downloads/BraynFuck.zip?attredirects=0&d=1



  • Man packt ja auch normalerweise keine Funktionsdefinitionen in die Header (außer inline-Funktionen), sondern in den CPP-Dateien. Und für die Funktionsprototypen reicht eine Forward-Deklaration der benötigten Typen aus.



  • Also guckst du nach Punkt 2 und 5. Und wieso inkludierst du <string>, wenn du ohne STL arbeiten willst?



  • Komplet alle Funktionen in die .cpp auch bei Klassen?



  • Ja...

    Wozu gibt's denn meine Anleitung eigentlich?



  • Ja

    Wobei man typischerweise mehrere CPP-Dateien für die einzelnen beteiligten Klassen verwendet und dann durch den Linker zu einem Programm zusammenfassen lässt.


Anmelden zum Antworten