Pages

Friday, September 26, 2008

C# typeof - How it works?

typeof

The typeof operator is used to obtain the System.Type object for a type. A typeof expression takes the form:


where:

type The type for which the System.Type object is obtained.

Remarks

The typeof operator cannot be overloaded.

To obtain the run-time type of an expression, you can use the .NET Framework method GetType.

Example

// cs_operator_typeof.cs
// Using typeof operator
using System;
using System.Reflection;

public class MyClass
{
public int intI;
public void MyMeth()
{
}

public static void Main()
{
Type t = typeof(MyClass);

// alternatively, you could use
// MyClass t1 = new MyClass();
// Type t = t1.GetType();

MethodInfo[] x = t.GetMethods();
foreach (MethodInfo xtemp in x)
{
Console.WriteLine(xtemp.ToString());
}

Console.WriteLine();

MemberInfo[] x2 = t.GetMembers();
foreach (MemberInfo xtemp2 in x2)
{
Console.WriteLine(xtemp2.ToString());
}
}
}

Output

Int32 GetHashCode()
Boolean Equals(System.Object)
System.String ToString()
Void MyMeth()
Void Main()
System.Type GetType()

Int32 intI
Int32 GetHashCode()
Boolean Equals(System.Object)
System.String ToString()
Void MyMeth()
Void Main()
System.Type GetType()
Void .ctor()
Referecence URL:
typeof(C#)