[C++]Zbyt wolne czyszczenie i drukowanie tekstu w konsoli

Ponieważ dawno mnie tu nie było najpierw się przywitam - siema :slight_smile:

A więc tak - rozpocząłem pisać konsolową grę typu Snake i mam kłopot z funkcją rysującą ‘klatkę’:

void Game::RysujKlatke()

{

	system("cls");

	cout << " Punkty : " << points << " \\ Czas gry : " << time;

	for(int i = 0; i < 23; ++i)

	{

		cout << endl;

		for(int j = 0; j < 79; ++j)

		{

			cout << Field[i][j];

		}

	}

}

Myślę, że funkcja jest na tyle przejrzysta, że każdy domyśli się jej działania :slight_smile:

Odnośnie problemu - chodzi o to, że system(“cls”) działa zbyt wolno i Field[][] nie zapełnia od razu całego ekrany, zamiast tego widać jak rysowane są poszczególne linijki! Męczę się z tym już drugi dzień - bez rezultatu. ](*,) ](*,)

Jeśli ktoś ma pomysł jak to rozwiązać proszę go o pomoc :slight_smile:

Nie używaj std::endl (bo to jest równoważne << ‘\n’ << std::flush).

Skoro używasz:

system(“cls”);

to z góry zakładasz że będzie to działać wyłącznie pod windows.

Radzę zainteresować się bezpośrednią kontrolą:

http://msdn.microsoft.com/en-us/library … 85%29.aspx

nr47 - dobra zmieniłem to na cout << ‘\n’

[alex] - dzięki, z tymi funkcjami może uda mi się coś zrobić, szczere thx :slight_smile:

Wczoraj dopadła mnie grypa więc i tak na razie muszę zawiesić prace nad Snake’iem - mimo to wlk thx :slight_smile: