Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Pouze tento týden sleva až 80 % na e-learning týkající se C a C++. Zároveň využij akce až 80 % zdarma při nákupu e-learningu - více informací.
c++ week

Diskuze: Nastavení ConsoleKeyInfo na nic

Aktivity
Avatar
Garrom Orc Shaman:15.4.2016 14:40

Zdravím, dělám jednoduchou aplikaci a potřebuji nastavit ConsoleKeyInfo na nic, něco jako null zkrátka aby byla proměnná prázdná jinak podmínka pořád platí a tělo podmínky se opakuje do nekonečna

while (true)
{
            info = Console.ReadKey();
    if (info.Key == ConsoleKey.RightArrow && index < 4)
            {
                    index = index ++;
                    draw.DarwMenu(control,index);
                    info = null;
            }
}

tento kód nefunguje protože hodnota ConsoleKeyInfo nemůže být null, tak jak mám zařídit vyprázdnění proměnné aby podmínka neplatila?

Odpovědět
15.4.2016 14:40
Life for Code, Code for Life. I chose my path, I should stick on it.
Avatar
Odpovídá na Garrom Orc Shaman
Michal Štěpánek:15.4.2016 14:53

A jakých hodnot ta proměnná může nabýt?

Nahoru Odpovědět
15.4.2016 14:53
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Lukáš Křehula
Redaktor
Avatar
Odpovídá na Garrom Orc Shaman
Lukáš Křehula:15.4.2016 14:56

U deklarace proměnné info přidej otazník => vytvoříš z ní nullovatelný typ

ConsoleKeyInfo? info;
 
Nahoru Odpovědět
15.4.2016 14:56
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Odpovídá na Lukáš Křehula
Garrom Orc Shaman:15.4.2016 15:08

nefunguje, píše tuto chybu

System.Nullable<System.ConsoleKeyInfo> neobsahuje definici Key a nebyla nalezena žádná metoda rozšíření Key, která by přijímala první argument typu System.Nullable<System.ConsoleKeyInfo> (nechybí direktiva using nebo odkaz na sestavení?)
Nahoru Odpovědět
15.4.2016 15:08
Life for Code, Code for Life. I chose my path, I should stick on it.
Avatar
Daziko
Člen
Avatar
Odpovídá na Garrom Orc Shaman
Daziko:15.4.2016 16:34

ConsoleKeyInfo je struktura vid https://msdn.microsoft.com/…vs.110).aspx
Takze ked pouzijes operator new mal by si ju budem ta citovat "nastavit na nic" :-P

info = new ConsoleKeyInfo();

Skus a daj vediet ci pomohlo.

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět
15.4.2016 16:34
Avatar
Odpovídá na Daziko
Garrom Orc Shaman:15.4.2016 19:27

Ano,pomohlo děkuju

Nahoru Odpovědět
15.4.2016 19:27
Life for Code, Code for Life. I chose my path, I should stick on it.
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 6 zpráv z 6.