我正在编写一个使用获取密码的软件std::cin
然而不太可能,我试图避免密码从内存分页到磁盘的可能性,所以我想修改缓冲区std::cin
以在我完成密码后立即覆盖密码。
现在我有这个:
std::cin.clear();
std::stringstream ss;
ss << "0000000000000000000000000000000000000000000000";
std::cin.rdbuf(ss.rdbuf());
std::cin.clear();
但我很确定这很糟糕,因为它没有考虑到 cin 缓冲区的当前大小。如何正确覆盖缓冲区的内容?
谢谢你的帮助!