这两天在研究特性是什么样子,但是越深入感觉越迷茫,因为更多的感觉特性就是一个类似于说明文档一样的东西,但是在很多Dll里面却又可以发挥神奇的作用,本着好奇的心力,反编译了一下UnityEngine.dll的源码,希望能找到一些帮助。。。
可是菜啊,好菜啊,给我源码我都动不了啊,宝山菜狗王这个称号我要了啊,刚把源码反编译完成,想断点一哈,TM,上百个错误了解一下,还都TM是看都看不懂的错误啊。。。
对不起,本垃圾错了,我不该窥觊源码的,源码什么的,修又修不了,看也看不懂,运行就报错,只能去百度谷歌东拼西凑挪挪别人的代码什么的,偶尔写两句hello world表示表示码畜界还有一个小垃圾存在的 。。。
==================================================================================================
首先,说一下我这两天的收获,标识->它确实只是一个标签(如果你就随意的使用的),我看了一下system.dll和unityengine.dll的源码,就以我们最常用的 [HideInInspector] 这个来看一下,

对,你没看错,里面一共就这么多代码,AttributeUsage[]这个是代表这个标签可以被防止在哪个位置,比如class,method,get,set等,而Attribute则是所有标签的基类,必须继承此类才能被声明为标签,看到这,很多人都会有疑问,这些代码到底有什么卵用,难道几句helloworld也能做事?
我和你们抱着同样的疑问,于是,就去问了一下大佬们的意见,网址链接->https://ask.csdn.net/questions/704221

而那个__Dy...我在stackoverflow网站上看到了一些解释,网址->
https://stackoverflow.com/questions/12550749/what-is-the-dynamicallyinvokable-attribute-for

// Each blessed API will

本文探讨了Unity中反射和特性标签的应用,通过分析[HideInInspector]等特性的源码,理解其作用。虽然特性本身看似简单,但在运行时通过反射可以实现诸如XLua的热修复等功能。作者分享了通过反射实现的功能代码块,并指出Unity在启动时就开始执行,解释了加载过程中的性能影响。
最低0.47元/天 解锁文章
4134

被折叠的 条评论
为什么被折叠?



