Compile Time:
Dinge, die zur Compile-Zeit erledigt werden, verursachen (fast) keine Kosten, wenn das resultierende Programm ausgeführt wird, können aber hohe Kosten verursachen, wenn Sie das Programm erstellen.
Run-Time:
Mehr oder weniger das genaue Gegenteil. Wenig Kosten beim Erstellen, mehr Kosten beim Ausführen des Programms.
Von der anderen Seite aus betrachtet; Wenn etwas zur Compile-Zeit erledigt wird, läuft es nur auf Ihrem Rechner, und wenn etwas zur Laufzeit erledigt wird, läuft es auf dem Rechner Ihrer Benutzer.
Relevanz
Ein Beispiel, wo dies wichtig ist, wäre ein Einheitentyp. Eine zur Compile-Zeit erstellte Version (wie Boost.Units oder meine Version in D) erweist sich als genauso schnell wie die Lösung des Problems mit nativem Gleitkommencode, während eine zur Laufzeit erstellte Version Informationen über die Einheiten, in denen ein Wert enthalten ist, herumschleppen und Checks bei jeder Operation durchführen muss. Andererseits erfordern die zur Compile-Zeit erstellten Versionen, dass die Einheiten der Werte zur Compile-Zeit bekannt sind und nicht mit dem Fall umgehen können, in dem sie aus einer Laufzeit-Eingabe stammen.