-1

我想知道当我们编译 .net 源代码时,它首先转换为 MSIL,然后转换为二进制可执行代码。我知道 MSIL 是独立于机器和语言的代码。

但是为什么它在被 CPU 执行之前先转换为 MSIL。我们在.net框架中实际上需要什么MSIL?

4

1 回答 1

6

我的头顶:

  • 它节省了大量时间,因为 MSIL 已经优化,我们称之为预编译
  • MSIL 与语言无关,如果代码是用 C#、VB 或 F# 或 ... 编写的,这不再重要,这意味着“执行运行时”不需要为每种可能的语言提供正确的编译器
  • MSIL 独立于平台
  • 去谷歌上查询
于 2013-01-30T09:43:05.680 回答