在合作开发.NET操作过程中,假如碰到对标识符执行结论有提出异议时,在原有标识符的此基础上无法找出难题,怎样借由表达方式看其本质,这就须要从校对器下层找难题,这时IL(尾端词汇)是必不可少的此基础了。
IL概要
具体来说介绍呵呵甚么是尾端词汇(全称 IL)?IL的全名是Intermediate Language (IL)将要.NET标识符转化成为机器词汇的两个尾端词汇的简写, 尾端词汇是校对采用高阶 .NET 词汇撰写的标识符后赢得的结论。他们能把他认知为为编订。 对采用当中一类词汇撰写的标识符展开校对后,方可赢得 IL 所聚合的十进制标识符。
ILDasm辅助工具的采用方式
IL尾端词汇查阅辅助工具有ILSpy和ILDasm之类,ILDasm是谷歌非官方公司出品的查阅尾端词汇的辅助工具。ILSpy是开放源码工程项目,在.NET framework黄金时代能查阅尾端词汇操作过程,但而后的.NET Core后虽然捷伊监督机制就无法查阅,根本无法反校对标识符,他们能试试看。接下去看一看ILDasm怎样采用。
采用方式有三种,第三加进到Visual Studio的辅助工具里,接着间接关上ILDasm采用就能了;第三种是在Visual Studio指示提示符输出ildasm关上。上面来单纯如是说呵呵。
1)加进Visual Studio的辅助工具里
关上Visual Studio辅助工具,点选加进加进两个辅助工具,点选指示前面的关上文档边线找出ILDasm所处产品目录点选选上ildasm.exe文档后点选确认就能加进获得成功(图1-1),采用方式间接在辅助工具里关上(图1-2)。
加进的边线一般在:
C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools文档夹下的。
图1-1 加进
图1-2 关上边线
2)Visual Studio指示提示关上
这个比较单纯,关上Visual Studio指示提示窗口,输出ildasm点选回车方可关上(如图2-1)
二种方式各有优点,根据自己的采用情况来选择关上方式。
ILDasm辅助工具的反校对说明
1)采用方式:点选”文档”关上聚合好的dll文档,假如是.NET framework版本能关上.EXE文档查阅尾端词汇。如图2-2
图2-2 关上
2)关上文档中的符号代表(图2-3):
图2-3
3)双击关上MANIFEST,这是程序的清单文档。红色箭头表示引用的外部类库是System.Runtime,如图:
图2-4
4)查阅main方式:
依次展开Program,双击带有mian的图标,如下图:
图 2-5
5)查阅foreach遍历数组的反校对
听说.net假如用foreach遍历数组,在尾端词汇会转换成for循环。他们来看一看反校对的标识符。这里新建了两个数组,分别用for和foreach循环,再新建个List,用foreach遍历,标识符如下:
聚合获得成功后他们看反校对的结论:
下图新建数组的尾端词汇,长这样,他们先略过
先看下图list数组加进和遍历,他们看一看是否有”Enumerator::MoveNext()”,这是foreach遍历的源码,假如看过.net 源码的很熟悉吧!
再来看一看遍历素组的foreach,如下图,没有发原有Enumerator::MoveNext()的字眼吧,说明foreach执行循环未遍历。
虽然篇幅有限,不再做过多说明,感兴趣他们能自己试试看。
结语
水平有限,假如你有更好的想法和建议,欢迎留言讨论。
版权声明:本文来源于网友收集或网友提供,仅供学习交流之用,假如有侵权,请转告版主或者留言,本公众号立即删除。
2.分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3.不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4.本站提供的源码、模板、插件等其他资源,都不包含技术服务请大家谅解!
5.如有链接无法下载或失效,请联系管理员处理!
6.本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!