【问题标题】:Compile time and RunTime?编译时间和运行时间?
【发布时间】:2010-12-29 00:28:25
【问题描述】:

我怀疑我不知道 C# 中的编译时间和运行时间是什么。我从多态性(方法重载,方法覆盖)中得到这个词,你能解释一下吗?谢谢

【问题讨论】:

  • 我猜谷歌会提供更好的帮助。

标签: c# asp.net


【解决方案1】:

计算机服从命令时产生的内部动作,即在“运行时”。

编译时间是指编译器执行的操作(“编译时操作”),源代码必须满足的编程语言要求才能成功编译(“编译时要求”),或可以在编译时推断的程序的属性。

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

【讨论】:

    【解决方案2】:

    方法重载是在编译时确定的。这意味着编译器确切地知道当您调用重载方法时将执行哪些代码。它可以直接调用代码,而无需添加代码运行时必须执行的任何检查。

    方法覆盖是在运行时确定的。当您调用虚方法时,要调用的实际方法由对象的实际类型确定,并且必须在调用完成时进行此检查。由于引用可能会引用不同类型的对象,因此编译器无法从引用类型中确定调用哪个方法,因此必须添加代码来查找从哪个类中获取方法。

    【讨论】:

      【解决方案3】:

      当您在 VS IDE 中按 F6 时,您正在编译。消耗的时间是编译时间。

      在 VS IDE 中按 F5 或 Ctrl+F5 时,您正在运行。消耗的时间是运行时间。

      【讨论】:

      • 澄清一下,当你按 F5 或 Ctrl+F5 时首先发生的(默认情况下)是构建(如果尚未编译,则编译程序),然后实际运行程序。
      猜你喜欢
      • 1970-01-01
      • 2013-01-23
      • 2013-05-09
      • 2010-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多