Diskuze: práce s polem objektů

C# .NET .NET (C# a Visual Basic) práce s polem objektů American English version English version

Avatar
qwertyW
Redaktor
Avatar
qwertyW:

Zdar a prosím o radu,
vytvořil jsem si pole objektů;

public Object[] pole;
pole[0] = new letadlo();

a potřebuji přistupovat k objektům v poli, otázka zní jak? Potřebuji něco jako

pole[0].zrychli()
Editováno 14.9.2014 13:23
Odpovědět 14.9.2014 13:23
Programuji, tedy jsem.
Avatar
Lako
Člen
Avatar
Odpovídá na qwertyW
Lako:

Musíš to přetypovat na letadlo.
tedy něco jako

public Object[] pole;
pole[0] = new letadlo();
var éro = (letadlo)pole[0];
éro.zrychli();

nebo:

var éro = pole[0] as letadlo

Rozdíl v těchto dvou přístupech je v tom, co se stane když se přetypování nepovede. Jeden způsoby ti vyhodí vyjímku a druhý ti vrátí null (který je který teď nevím). Správně bys měl ošetřit i tento stav..

Název třídy by měl být velkým písmenem, tedy Letadlo.

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 14.9.2014 15:27
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na qwertyW
Jan Vargovský:

Proč nemáš rovnou

Letadlo[] letadla = new Letadlo[N];
letadla[0].Zrychli();

?

 
Nahoru Odpovědět 14.9.2014 15:30
Avatar
qwertyW
Redaktor
Avatar
Nahoru Odpovědět 14.9.2014 16:25
Programuji, tedy jsem.
Avatar
qwertyW
Redaktor
Avatar
Odpovídá na Jan Vargovský
qwertyW:

Rychle jsem napsal příklad. ;)

Nahoru Odpovědět 14.9.2014 20:36
Programuji, tedy jsem.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.