IL&反射
文章平均质量分 81
changuncle
这个作者很懒,什么都没留下…
展开
-
Emit语法简单实现(含实例)
Emit语法简单实现原创 2016-10-10 14:58:27 · 14964 阅读 · 2 评论 -
CIL之——值类型与引用类型的声明和使用
在C#代码中调用值类型的变量和调用引用类型的变量没什么区别,但是在CIL代码中就有不一样了,下面让我们看一下CIL代码是如何实现这一功能的吧!原创 2017-06-03 23:29:22 · 586 阅读 · 2 评论 -
CIL之——入栈和出栈顺序
或许大家都听说过,栈是先进后出,队列是先进先出,那实际中入栈和出栈是怎么进行的呢?下面让我们一窥究竟吧!原创 2017-06-03 10:10:57 · 933 阅读 · 2 评论 -
CIL之——field的存储与加载
field指的是类内部的成员变量,供类内部的方法调用,那在CIL代码中field是如何实现存储与加载的呢?下面让我们一窥究竟。原创 2017-06-03 11:25:38 · 528 阅读 · 2 评论 -
CIL之——输出Hello World
既然了解了CIL是什么、长什么样子,那么下面就让我们写出第一个CIL语言的程序吧!无论哪种语言,入门程序都是输出Hello World,那么我们就用CIL实现一个输出Hello World的小程序。原创 2017-06-03 09:32:18 · 821 阅读 · 2 评论 -
CIL之——初识CIL
通用中间语言(Common Intermediate Language,简称CIL)(亦被称作MSIL或IL)是一种属于通用语言基础架构和.NET框架的低阶(lowest-level)的人类可读的编程语言,它是一种代码指令集。原创 2017-05-31 22:40:56 · 5685 阅读 · 2 评论 -
实现简易的AOP框架(一)
在本文成稿之前我已经写过一些关于AOP、CIL、反射的文章,如果大家对这一部分内容不太熟悉的话,建议大家先读一下IL&反射系列文章和EMIT学习系列文章,因此就不在这里赘述AOP的定义了,不过要把AOP的作用简单点说一说:原创 2017-06-14 22:57:07 · 482 阅读 · 2 评论 -
CIL之——ilasm.exe和ildasm.exe
ilasm.exeilasm.exe即IL汇编程序,它可利用中间语言(IL)生成可移植可执行(PE)文件。可以运行一下生成的可执行文件(包含IL和所需的元数据)以确定IL是否按预期执行。原创 2017-05-30 12:12:20 · 7718 阅读 · 2 评论 -
CIL之——call和callvirt的区别
CIL代码中调用方法的常用方法有call和callvirt两种,那它们到底有什么区别呢?下面让我们通过例子来看一看吧!原创 2017-06-04 14:48:34 · 2715 阅读 · 2 评论 -
.Net IL指令速查表
.Net IL指令速查表原创 2017-05-06 09:59:47 · 1377 阅读 · 2 评论 -
Emit常用Opcodes指令使用方法(含实例)
本人是从0开始学习Emit的,在学习过程中比较困扰我的就是有很多指令不理解、不会用,查了很多资料最终算是搞明白了,记录下来供大家参考。原创 2016-10-22 11:34:34 · 7409 阅读 · 4 评论 -
理解C#反射机制
反射是.NET中的重要机制,通过反射可以得到*.exe或*.dll等程序集内部的接口、类、方法、字段、属性、特性等信息,还可以动态创建出类型实例并执行其中的方法。原创 2016-11-01 13:12:32 · 15420 阅读 · 4 评论 -
理解AOP(一)
面向切面编程AOP(Aspect Oriented Program)原创 2016-09-12 10:26:41 · 616 阅读 · 2 评论 -
Emit基本概念介绍
对Emit、AOP感兴趣很久了,最近终于有时间研究一下,所以就开始学习,网上还是高人多(尤其是在2010年之前就混IT界的),查了一些资料对Emit也算是了解了一点点,总结下来跟大家分享一下。什么是反射发出(Reflection Emit)说到反射大家应该都不陌生,反射是在运行时发现对象的相关信息,并且执行这些对象(创建对象实例,执行对象中的方法),简单地说反射不仅允许你浏览一个程序集暴露的类、方法原创 2016-09-22 14:18:01 · 11749 阅读 · 2 评论 -
轻松读懂IL
学习一下IL指令,把有用的东西分享给大家。原创 2016-10-10 10:40:13 · 3536 阅读 · 3 评论 -
实现简易的AOP框架(二)
在上一篇文章中我介绍了AOP的实现原理,下面我们就使用Emit来实现一个简单的AOP框架,最后再写一个使用这个框架的例子来检测一下效果。原创 2017-06-17 10:47:40 · 893 阅读 · 2 评论