.Net リフレクターを使用して、これらの型の間の関係を見つけることができません。何か案が?
1 に答える
8
「.Netリフレクターを使用する」と言うので:
リフレクションが必要な場合:
Type type = typeof (int);
while(type != null)
{
Console.WriteLine(type.FullName);
type = type.BaseType;
}
これは次のことを示しています。
System.Int32
System.ValueType
System.Object
そしてあなたがILを意味するならば:
.class public sequential ansi serializable sealed beforefieldinit Int32
extends System.ValueType
と:
.class public abstract auto ansi serializable beforefieldinit ValueType
extends System.Object
(リフレクターで、タイプのノードを選択し、ビューとしてILを選択します)
C#ビューを意味する場合は、次のようになります。
public struct Int32 ...
十分です。struct
キーワードは:から継承することを意味しますValueType
(ただし、通常のC#のclass
方法では完全ではありません)。ValueType
通常のクラスのままで、次のようになります。
public abstract class ValueType ...
そしていつものように、class
ベースタイプを指定しないaは次のことを意味します:から継承しobject
ます。
于 2012-08-02T07:25:05.893 に答える