【问题标题】:What is the difference between "compile time" and "run time"?“编译时间”和“运行时间”有什么区别?
【发布时间】:2009-10-05 10:25:31
【问题描述】:

我不明白术语“编译时”和“运行时”(或“运行时”)是什么意思。

我对“值类型”和“引用类型”的含义以及它们与上述“时间”的关系也有些困惑。

有人可以解释一下这些事情吗?

【问题讨论】:

    标签: .net definition


    【解决方案1】:

    “编译时间”是您构建代码的时间 - 编译器将您的源代码转换为 IL 的时间。

    “运行时”是执行代码的时间 - 对于 ASP.NET,是发出页面请求的时间。 (我个人更喜欢用“执行时间”来区分它和“公共语言运行时(CLR)”——也就是虚拟机。)

    值类型和引用类型是一个完全独立的概念,但我有关于它们的an article,您可能会觉得它们很有用。

    【讨论】:

    • 我要说的是编译时分配的值类型内存和运行时分配的引用类型内存
    • @Surya:不,这根本不是真的。它们是完全独立的概念 - 不要试图将它们放在一起。
    • 好吧好吧,乔恩斯基特我明白了。你能发送任何关于 c# 基本内容的材料吗,比如什么是类、封装、抽象、继承、像这样的代表我想要 c# 的基础知识,这是我的 id suryasasidhar@yahoo.co.in
    • 不要在这里要求将任何材料发送到您的电子邮件 ID。最好要求一些链接。
    • 这在 3 年后有所帮助。谢谢。来自巴基斯坦的爱。
    【解决方案2】:

    一个值类型的变量, 存储数据,而一个变量 引用类型存储对 数据。

    在计算机科学中,compile time 是指编译器执行的操作(“编译时操作”),源代码必须满足的编程语言要求成功编译(“编译时要求”),或可以在编译时推断的程序属性。

    在编译时执行的操作通常包括语法分析、各种语义分析(例如,类型检查和模板的实例化)和代码生成。

    在计算机科学中,限定词 run time、运行时间、运行时间或执行时间是指计算机程序在计算机中实际执行(“运行”)的时间段,从开始终止。它也可能意味着程序的运行时间,那个时期的持续时间。

    【讨论】:

    【解决方案3】:

    值类型变量是指可以直接存储自己的值的变量。
    引用类型变量是指存储其值的引用(即值的地址)而不是直接存储值的变量。

    【讨论】:

      【解决方案4】:

      关于您的第一个问题,请参阅Stack Overflow: Runtime vs Compile time

      关于你的第二个问题,见Stack Overflow: What are the differences between value types and reference types in C#

      关于它们之间的关系:它们是独立的概念。 设置变量的值并读取其值发生在运行时;该变量是否具有值类型或引用类型。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-03-10
        • 2013-05-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多