Type.GetTypeCode的文档指出: Remarks When you inherit from 07001, you can change the behavior of this method by overriding the 07002 method. 该文档未描述何时从System.Type继承.它是否对任何实际应用程序有效或适用
Remarks
When you inherit from 07001, you can change the behavior of this method
by overriding the 07002 method.
该文档未描述何时从System.Type继承.它是否对任何实际应用程序有效或适用,还是仅适用于CLI的实施者?
System.Type文档也不包含此信息,它只包含必须为派生类重写哪些成员的列表.
由于无法覆盖typeof,我假设typeof运算符仍然从mscorlib程序集或类似地返回内部System.RuntimeType类的实例.用户派生类有什么用处?
您基本上不应该从System.Type派生自己的类型.除非你是CLR团队的一员,否则这不是我能看到的用途.如果您正在实施一个模拟框架或类似的东西,可能有一些理由这样做 – 但我很怀疑.我对从Type中得到的任何东西都很怀疑 – 如果你不小心的话,我会期待它可以很容易地出错.我怀疑文档应该说的是“从System.Type派生的类通过覆盖GetTypeCodeImpl改变了这个方法的行为” – 尽管坦率地说即使这是用户并不真正需要知道的东西.