繁体   English   中英

“编译时间”和“运行时间”有什么区别?

[英]What is the difference between “compile time” and “run time”?

我不明白术语“编译时间”和“运行时间”(或“运行时”)的含义。

我对“价值类型”和“参考类型”的含义以及它们与上述时间的关系有点困惑。

有人请解释这些事吗?

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

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

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

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

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

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

在计算机科学中,限定符运行时 ,运行时,运行时或执行时是指计算机程序在计算机中从开始到终止时实际执行(“运行”)的时间段。 它也可能意味着程序的运行时间,即该时间段的持续时间。

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

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

关于第二个问题,请参阅Stack Overflow:C#中值类型和引用类型之间的区别是什么

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM