2 Stimmen

Kompilierzeit und Laufzeit?

Ich habe Zweifel, ich weiß nicht, was ist Kompilierzeit und was ist Laufzeit in C#. Ich bekomme diese Worte von Polymorphismus (Method overloading, method overriding) kann u mir erklären. Dankeschön

3voto

Guffa Punkte 663241

Das Überladen von Methoden wird zur Kompilierzeit festgelegt. Das bedeutet, dass der Compiler genau weiß, welcher Code ausgeführt wird, wenn Sie eine überladene Methode aufrufen. Er kann einen direkten Aufruf des Codes erzeugen, ohne zusätzliche Prüfungen vorzunehmen, die bei der Ausführung des Codes durchgeführt werden müssten.

Die Überschreibung einer Methode wird zur Laufzeit festgelegt. Wenn Sie eine virtuelle Methode aufrufen, wird die tatsächlich aufzurufende Methode anhand des tatsächlichen Typs des Objekts bestimmt, und diese Prüfung muss beim Aufruf durchgeführt werden. Da ein Verweis potenziell auf Objekte unterschiedlichen Typs verweisen kann, kann der Compiler anhand des Verweistyps nicht feststellen, welche Methode aufgerufen wird, so dass er Code hinzufügen muss, um zu ermitteln, von welcher Klasse die Methode abgerufen werden soll.

1voto

Siddiqui Punkte 7372

Die internen Aktionen, die ausgeführt werden, wenn die Befehle vom Computer befolgt werden, d. h. zur "Laufzeit".

Die Kompilierzeit bezieht sich entweder auf die von einem Compiler durchgeführten Operationen (die "Kompilierzeit-Operationen"), auf die Anforderungen der Programmiersprache, die der Quellcode erfüllen muss, damit er erfolgreich kompiliert werden kann (die "Kompilierzeit-Anforderungen"), oder auf Eigenschaften des Programms, die zur Kompilierzeit abgeleitet werden können.

Ref:- http://www.cs.bham.ac.uk/research/projects/poplog/primer/node35.html http://en.wikipedia.org/wiki/Compile_time

0voto

user366312 Punkte 16884

Wenn Sie F6 in VS IDE drücken, kompilieren Sie. Die verbrauchte Zeit ist die Kompilierzeit.

Wenn Sie F5 oder Strg+F5 in der VS IDE drücken, werden Sie ausgeführt. Die verbrauchte Zeit ist die Laufzeit.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X