| 

.NET C# Java Javascript Exception

3
Ich will von einem Parameter den Typ zurückgeben lassen, weil ich den in einer if-Abfrage brauche. Das klappt über GetType. Aber ich muss ihn in der Abfrage mit dem Typ von int vergleichen und auf int ist GetType nicht definiert. Also das gibt einen Compilerfehler:
if (a.GetType() == int.GetType())
17.01.2011
Bub 31 1 2
kirt 502 2 7
Syntax korrigiert :)
kirt 17.01.2011
3 Antworten
4
if (a.GetType() == typeof(int))

http://msdn.microsoft.com/de-de/library/58918ffs%28v=vs.80%29.aspx

Zur Erklärung: .GetType ist eine Methode der Klasse OBJECT und kann von daher nur ein Ergebnis liefern wenn du eine Instanz einer Klasse hast die von Object abgeleitet ist (oder einer Instanz von Object selbst). INT ist jedoch ein Typ, also weder von OBJECT abgeleitet noch eine Instanz, weshalb du .GetType nicht zur Verfügung hast.
17.01.2011
Floyd 14,6k 3 9
Floyd 14,6k 3 9
2
Versuch's mal mit:
if(a.GetType()==typeof(int))


Servus,
Klaus
17.01.2011
klaus_b 1,6k 3 7
0
if(a is int)
20.03.2012
phipu 287 1 8

Stelle deine .net-Frage jetzt!
TOP TECHNOLOGIES CONSULTING GmbH