Witam ponownie!
Kwestia jest tego typu: po przeniesieniu sporego projektu ze środowiska Dev-c++ na VisualStudio2017 szybkość wypisywania tekstów znacznie spadła. Mój program wypisuje teksty kolorując je dodatkowo za pomocą prostej funkcji:
HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
void Mapy::t(string tekst, int kolor)
{
SetConsoleTextAttribute(handle, kolor);
cout << tekst;
}
Zmienna handle jest globalna, a aby zniwelować błędy związane z "<<" w owym środowisku - dodałem bibliotekę <string> ( i problem zniknął ).
Wspomnę, że przy takim układzie (bez <string>) w Dev'ie program śmigał jak trzeba. Linijek kodu wypisujących na ekran jest miliard a tempo wypisywania znacznie spadło.
Moje pytanie:
- czy da się coś zrobić z prędkością wypisywania na ekran tekstów, za pomocą koloryzującej funkcji "t", ale i nie tylko, gdyż problem pojawia się również przy wypisywaniu "coutem" w zwykłych pętlach;
- oraz co jest możliwą przyczyną utraty wydajności w takim układzie?
Jeśli temat został już gdzieś poruszony/wyjaśniony - proszę o podlinkowanie. Mnie nie udało się znaleźć nic w sieci. Z góry dzięki! Pozdrawiam.