Wie setzt Visual Studio die Dateien zusammen?



  • 😕

    Naja - wollte eig nur wissen ob ich das, was ich weiss oder gelesen habe richtig
    Verstanden habe.
    Meiner Meinung nach hat man was nur dann richtig verstanden, wenn man es
    in eigenen Worten wiedergeben und erklaeren kann... das hab ich dann hier versucht und suchte Bestaetigung 😉



  • Ich hab keine Compilerbaubücher gelesen, halte aber

    Der Compiler faengt ja in der .cpp datei wo die Mainfunktion definiert ist an.
    Dann instanziert er das erste Formular und setzt vorher den Header in die CPP Datei des Formulares zusammen.

    für Blödsinn. Afaik erstellt der Compiler keine Klassen aus dem zu übersetzenden Quellcode.

    Diese werden nun nacheinander von vorne nach hinten vom Compiler uebersetzt und vorher zu einer grossen Tempdatei gemacht.

    AFAIK wird aus jeder .c oder .cpp Datei ein Objektfile erstellt. Das zusammensetzen wird dann durch den Linker erledigt.

    Ich weiß nicht wie grob Deine Vorstellung sein darf, aber viel von einem Entwickler hat sie vermutlich nicht.



  • Kennt denn wer einen Artikel, wo es besser beschrieben ist?
    Naja... beruflich mach ich C++ eigentlich ja auch nicht.
    Bin eigentlich Systemadmin... 😉



  • 777 schrieb:

    Kennt denn wer einen Artikel, wo es besser beschrieben ist?
    Naja... beruflich mach ich C++ eigentlich ja auch nicht.
    Bin eigentlich Systemadmin... 😉

    Ja dann, gute Nacht Marie :xmas2:



  • Weil ich C++ nicht beruflich mache, oder Systemadmin bin?



  • Weil Du C++ nicht beruflich machst und Systemadmin bist...

    😉



  • Ich bin auch in unserer Firma der einzige Systemadmin der ueberhaupt programmiert.
    Alle anderen meinen immer Programmierer wuerden alle mit der Zeit verrueckt spielen und Selbstmord begehen... ich habe das Gefuehl Systemadmins und Programmierer koennen nicht so gut miteinander.
    Bisher hat bei mir dann doch immer beides geklappt: Der Job und das Hobby 😉



  • Alle anderen meinen immer Programmierer wuerden alle mit der Zeit verrueckt spielen und Selbstmord begehen...
    

    Oh Gott, wenn meine Frau das hört...



  • Naja... ich finds gerade geil wenn man Systemintegration und Programmieren gleichzeitig macht, da es einem in Systemintegration oft hilft ein bisschen so zu denken, wie ein Programmierer.
    Allerdings muss man sich wohl frueher oder spaeter fuer eine Spate entscheiden, weil man sonst echt Selbstmord begeht, da es einfach zu viel ist ^^
    Naja... bin erst 19 und hab noch viel Zeit zu entscheiden...
    Die Leute im Forum scheinen das hier ja echt alle Beruflich zu machen und nebenher immer im Forum zu schreiben.

    Find ich schon bewundernswert...



  • Aber eventuell kann ja auch wenn ich Systemadmin bin trotzdem noch jemand meine Frage beantworten.
    Ich finde im Netz naemlich dazu nicht wirklich eine Beschreibung.

    Beispielsweise habe ich gerade mal rein Testweise zwei Formulare in Visual Studio erstellt und in die Form2.cpp einen Haltepunkt gesetzt und eine Variable definiert.
    Allerdings wird dieser Haltepunkt niemals angesprochen, wenn ich die Formulare erstelle.
    Wann genau wird der Code in CPP-Dateien ueberhaupt ausgefuert???

    Wenn ich Schrittweise durch die Instanzierung des Formulares 2 gehe kommt die CPP-Datei ebenfalls niemals zum tragen.
    Aber irgendwann muss sie es doch mal...



  • Dann wird der Code nicht ausgeführt, oder der Debugger ist Müll.* Wahrscheinlicher ist das erste. So pauschal wird Dir das aber niemand beantworten können. Höchstens, wenn wir den Code sehen.

    Das hat aber mit Deiner ursprünglichen Frage nichts zu tun. Der Compiler liest die Dateien in der Reihenfolge, die man ihm vorgibt (bzw. die Deine IDE und deine #include-Anweisungen ihm vorgeben).

    Edit:
    * Oder der Debugger wird falsch aufgerufen, oder Du kompilierst das ganze in einer nicht Debugging-tauglichen Form.



  • Naja... habe gerade herausgefunden - nach ein bisschen Herumprobieren -, dass diese CPP Dateien, die erstellt werden sobald man ein Formular hinzufuegt eigentlich ueberfluessig sind.
    Sie werden weder mit kompiliert noch was anderes.
    Es wird nur dann auf sie zurueckgegriffen, wenn der Programmierer eigene Funktionen da ausgelagert hat.
    Variablen die da definiert sind koennen nicht global verwendet werden, sondern sind nur sinnvoll, wenn sie in Funktionen gekapselt sind...


Anmelden zum Antworten