[英]How do virtual methods work in C#?
我知道在C ++中有vpointer和vtable。 虚函数表是类中虚拟方法的方法指针列表。 类的每个实例都有一个指向表的指针,当我们从实例调用虚方法时使用该指针。
我想知道它是如何在C#中实现的。 据我所知,虚拟表的概念是相同的。 但是,使用GetType()代替vpointer。
我会尽可能多地了解细节。 谢谢。
Vtables是C ++中的一种可能方法,它们不是 C ++标准的强制要求。 .NET使用的方法明显符合CLI和C#的已发布标准,但未指定实现细节(并且可能会更改)。
您可以从接口,覆盖成员和“新”成员的工作方式推断出一些细节。
你为什么想知道这个? 如果您遇到特定问题,则说明问题将允许其他人直接解决问题。
看看他们在C#规范中的文档: 10.5.3虚拟方法 (尽管规范不是实现)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.