私のアプリはstd::cin
ストリームを使ってユーザ入力を読み込みます。 私はデフォルトの入力を提供したいと思います。ユーザーはそれをそのまま受け入れるか(Enterを押す)、続行する前に変更してください(古い文字をバックスペースで削除して新しいテキストを追加する)。cin入力のデフォルト値を指定する
文字をcin.rdbuf
に直接入れることができますが、これは達成したいことではありません。 ユーザーの入力を待っているときにコンソールのカーソルがある場所にコンソールウィンドウに文字を置いて、ユーザーがそれを受け入れる前にそれらを読まないようにしたいと思います。ユーザーはそれらを削除して、自分のテキストを書くこともできるはずです。
cin
を使用して達成できるか、コンソールのコンテンツを1文字読み直してシミュレートする必要がありますか?
あなたが何かをしたい場合:
これが行われている伝統的な方法は、単にプロンプト自体にデフォルトの入力値を示し、そして、何かのように空の入力の際にデフォルト値を使用することですncurses(http://hughm.cs.ukzn.ac.za/~murrellh/os/notes/ncurses.html)を参照するのではなく、事前に塗りつぶしたスクリーンマスクのようなものです。 –
これを行うには、コンソールライブラリが必要です(例:[Microsoft's](https://msdn.microsoft.com/en-us/library/windows/desktop/ms682073%28v=vs.85%29.aspx? f = 255&MSPPError = -2147217396)または[libreadline](https://cnswww.cns.cwru.edu/php/chet/readline/rltop.html)または[ncurses](https://en.wikipedia。 org/wiki/Ncurses) – kfsone