【发布时间】:2009-10-05 10:25:31
【问题描述】:
我不明白术语“编译时”和“运行时”(或“运行时”)是什么意思。
我对“值类型”和“引用类型”的含义以及它们与上述“时间”的关系也有些困惑。
有人可以解释一下这些事情吗?
【问题讨论】:
标签: .net definition
我不明白术语“编译时”和“运行时”(或“运行时”)是什么意思。
我对“值类型”和“引用类型”的含义以及它们与上述“时间”的关系也有些困惑。
有人可以解释一下这些事情吗?
【问题讨论】:
标签: .net definition
“编译时间”是您构建代码的时间 - 编译器将您的源代码转换为 IL 的时间。
“运行时”是执行代码的时间 - 对于 ASP.NET,是发出页面请求的时间。 (我个人更喜欢用“执行时间”来区分它和“公共语言运行时(CLR)”——也就是虚拟机。)
值类型和引用类型是一个完全独立的概念,但我有关于它们的an article,您可能会觉得它们很有用。
【讨论】:
一个值类型的变量, 存储数据,而一个变量 引用类型存储对 数据。
在计算机科学中,compile time 是指编译器执行的操作(“编译时操作”),源代码必须满足的编程语言要求成功编译(“编译时要求”),或可以在编译时推断的程序属性。
在编译时执行的操作通常包括语法分析、各种语义分析(例如,类型检查和模板的实例化)和代码生成。
在计算机科学中,限定词 run time、运行时间、运行时间或执行时间是指计算机程序在计算机中实际执行(“运行”)的时间段,从开始终止。它也可能意味着程序的运行时间,那个时期的持续时间。
【讨论】:
值类型变量是指可以直接存储自己的值的变量。
引用类型变量是指存储其值的引用(即值的地址)而不是直接存储值的变量。
【讨论】:
关于您的第一个问题,请参阅Stack Overflow: Runtime vs Compile time。
关于你的第二个问题,见Stack Overflow: What are the differences between value types and reference types in C#。
关于它们之间的关系:它们是独立的概念。 设置变量的值并读取其值发生在运行时;该变量是否具有值类型或引用类型。
【讨论】: