저는 40x20 블록의 캐릭터를 애니메이션으로 만들고 싶습니다. 나는 cout
-ing입니다. system("cls");
으로 콘솔을 지우고 캐릭터의 다음 블록을 즉시 표시하고 싶습니다. 현재 다음 블록이 타자기 스타일로 나타납니다.console cout animation - C++
내 질문에 대한 가장 간단한 대답은 타자기 스타일을 사용하는 대신 한 번에 20 줄 40 자의 문자 스트림을 사용하는 것입니다.
하여 Main.cpp :
mazeCreator.cout();
Sleep(5000);
system("cls");
cout을()
void MazeCreator::cout() {
char wallChar = (char) 219;
char pavedChar = (char) 176;
char lightChar = ' ';
char startChar = 'S';
char finishChar = 'F';
char errorChar = '!';
char removedWallChar = 'R';
char landmarkLocationChar = 'L';
ostringstream oss;
for (int row = 0; row < rows; row++) {
oss << " ";
for (int col = 0; col < columns; col++) {
if (mazeArray[row][col] == wall)
oss << wallChar;
else if (mazeArray[row][col] == paved)
oss << pavedChar;
else if (mazeArray[row][col] == light)
oss << lightChar;
else if (mazeArray[row][col] == start)
oss << startChar;
else if (mazeArray[row][col] == finish)
oss << finishChar;
else if (mazeArray[row][col] == removedWall)
oss << removedWallChar;
else if (mazeArray[row][col] == landmarkLocation)
oss << landmarkLocationChar;
else
oss << errorChar;
}
oss << "\n";
}
oss << "\n\n";
cout << oss.str();
}
I은 Windows를위한 가정 예를 들면 다음과 같습니다입니까? –
자세한 내용을 입력해야합니다. –
그것이 그려진 것을 볼 수 있다는 것을 의미합니까? 버퍼를 사용할 수 있습니다 : http://msdn.microsoft.com/en-us/library/windows/desktop/ms682122(v=vs.85).aspx – chris