Я заметил, что всякий раз, когда я пишу программу, которая использует std::cin
, если я хочу, чтобы пользователь нажал Enter, чтобы завершить программу, мне нужно дважды написать std::cin.ignore()
, чтобы получить желаемое поведение. Например:
#include <iostream>
int main(void)
{
int val = 0;
std::cout << "Enter an integer: ";
std::cin >> val;
std::cout << "Please press Enter to continue..." << std::endl;
std::cin.ignore();
std::cin.ignore(); // Why is this one needed?
}
Я также заметил, что когда я не использую cin
для фактического ввода, а просто для вызова ignore()
в конце, мне нужен только один.