最近赶项目忽然想到一个问题,那就是在 .net平台下的c#代码是怎么从源代码到机器可以识别的电脑的(只怪自己上学不好好读书,现在又要重补一遍了!!!)
话不多说直接上调研结果:
预习知识:
1: il 是微软.net平台上衍生出的一门中间语言,.net平台上的各种高级语言(如c#,vb,f#)的编译器会将各自的代码转化为il。
2: clr是一个可以由多编程语言使用的运行时,clr的核心功能:内存管理,程序集加载,安全性,异常处理,线程同步等等。可以被很多属于微软系列的开发语言使用。
结果:
.net framework的核心是其运行库执行环境,成为公共语言运行库(clr)或.net运行库。通常将在clr控制下运行的代码称为托管代码(managed code)。clr执行编写好的源代码之前需要编译他们。.net中编译分为两个阶段:
(1)把源代码编译为microsoft中间语言(il).
(2)clr把il编译为平台专用的代码。
第一次编译很慢(通过各自的编译器)(由源代码---->>中间代码il),第二次编译很快(通过clr)(由中间代码---->>机器代码)
版权声明:本文为博主原创文章,如需转载,请标明出处。
如对本文有疑问, 点击进行留言回复!!
使用Visual Studio2019创建C#项目(窗体应用程序、控制台应用程序、Web应用程序)
C#实现获取本地内网(局域网)和外网(公网)IP地址的方法分析
网友评论