ページ 11

std::coutでの出力

Posted: 2015年4月13日(月) 10:12
by Referia
VC2013のC++コンソールアプリケーションでテトリスを作っています。
画面表示にstd::coutで出力しているのですがsystem("cls");で画面クリアするとチラついてしまうのを止めたいです。
他に上書きする方法は無いでしょうか?

コード:

// 描画処理
void Tetris::Render(){
	// コンソールの初期化
	system('cls');
	// テトリスのボードの描画
	std::cout << "□□□□□□□□□□□□□□" << std::endl;
	for (int y = 0; y < STAGE_HEIGHT; y++){
		for (int x = 0; x < STAGE_WIDTH; x++){
			// ボードの状態を定義している列挙型の値を取得しその値によって文字を描画
			// Noch:無 Wall:壁  Block:プレイヤーの操作するテトリミノ
			std::cout << ( board.getBoardStatus(x, y) == Noch ? "□" : board.getBoardStatus(x, y) == Wall ? "■" : "○" );
		}
		std::cout << std::endl;
	}
}