内容简介:我刚刚了解Virtual和Override用于(我找不到这么长时间使用).我不能给你任何关于如何在IL中完成的见解,但基本理论很简单.当编译器看到虚拟方法声明时,不是将该方法附加到类中,而是将其添加到该类的vtable(虚方法表)中,该类保存指向函数的指针.
我刚刚了解Virtual和Override用于(我找不到这么长时间使用).
我不能给你任何关于如何在IL中完成的见解,但基本理论很简单.
当编译器看到虚拟方法声明时,不是将该方法附加到类中,而是将其添加到该类的vtable(虚方法表)中,该类保存指向函数的指针.
现在由于vtable是类的一部分,它由子类继承,因此虚拟方法也是继承的.现在是覆盖位.当编译器在方法声明中看到覆盖时,它会查找vtable,找到要覆盖的方法并更改函数指针,使其指向新的定义.
因此,您既可以从父类继承方法,也可以在子类中更改它们的定义.
有关更多信息,请参阅 Virtual Method Table 上的Wikipedia文章.
翻译自:https://stackoverflow.com/questions/1310312/what-does-virtual-and-override-do-behind-the-scene
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Nginx极简教程,覆盖常用场景
- C++中重载、覆盖和隐藏的区别以及适用场景
- APIAuto 2.1.0 发布,机器学习随机测试,全方位覆盖测试场景
- iOS 覆盖率检测原理与增量代码测试覆盖率工具实现
- 酒店无线网络覆盖
- 景区无线网络覆盖
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Operating System Algorithms
Nathan Adams、Elisha Chirchir / CreateSpace Independent Publishing Platform / 2017-4-21 / USD 39.15
Operating System Algorithms will walk you through in depth examples of algorithms that you would find in an operating system. Selected algorithms include process and disk scheduling.一起来看看 《Operating System Algorithms》 这本书的介绍吧!