Wie kommt die C # -Kompilierung darum, Header-Dateien zu benötigen?

Ich habe mein Berufsleben als C # -Entwickler verbracht. Als Student habe ich gelegentlich C benutzt, aber sein Kompilierungsmodell nicht gründlich studiert. Kürzlich bin ich auf den Zug gesprungen und habe angefangen, Objective-C zu studieren. Meine ersten Schritte haben mich nur auf Lücken in meinem vorhandenen Wissen aufmerksam gemacht.

Nach meinen Recherchen müssen für die C / C ++ / ObjC-Kompilierung alle gefundenen Symbole im Voraus deklariert werden. Ich verstehe auch, dass das Bauen ein zweistufiger Prozess ist. Zunächst kompilieren Sie jede einzelne Quelldatei in einzelne Objektdateien. Diese Objektdateien können undefinierte "Symbole" enthalten (die im Allgemeinen den in den Header-Dateien deklarierten Bezeichnern entsprechen). Zweitens verknüpfen Sie die Objektdateien zu Ihrer endgültigen Ausgabe. Dies ist eine ziemlich gute Erklärung, die aber meine Neugier befriedigt. Ich hätte aber auch gerne ein ähnliches Verständnis für den C # -Erstellungsprozess.

Q: Wie umgeht der C # -Erstellungsprozess die Notwendigkeit von Headerdateien? Ich könnte mir vorstellen, dass der Kompilierungsschritt zwei Durchgänge umfasst.

(Bearbeiten: Folge der Frage hierWie kann C / C ++ / Objective-C mit C # verglichen werden, wenn es um die Verwendung von Bibliotheken geht?)

Antworten auf die Frage(5)

Ihre Antwort auf die Frage