Diskuze: Vykreslování konzole
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
predpokladam ze vykreslujes pomoci
Console.Clear();
for(x)
for(y)
Console.Write(data[x,y]);
Console.WriteLine();
osobne bych radsi vykresloval jen zmenene objekty
foreach(var o in objects)
if(o.NeedRedraw)
o.Draw();
Možná bych zkusil text vypsat první do stringu, a teprve potom jej celý
vykreslit. Při každém volání Console.Write() se kontroluje buffer, jestli
není plný, a pokud je, tak se řetězec vykreslí. To znamená použití
systémového přerušení. Kromě toho každé Console.WriteLine automaticky
buffer vyprázdní.
Zkus si místo Console.Write vytvořit string, do kterého budeš znaky ukládat
a vypsat jej až úplně na konci.
Rada1: místo stringu použij StringBuilder, ušetříš výkon, protože string
je implementovaný jako neměnný (tzn. při přičtení se vytváří celý
původní řetězec znovu a data se do něj musí nakopírovat - výkonostní
problém. StringBuilder toto omezuje).
Rada2: namísto WriteLine (tedy jako ukončení řádku) můžeš použít
escape sekvence "\r\n"
Zobrazeno 4 zpráv z 4.