Хочу научится правильно использовать cin.ignore(), но что-то не могу найти нужной информации по этому методу.
Как я понимаю этот метод может вообще не принимать аргументов, принимать количество пропускаемых символов, либо количество пропускаемых символов и символ разделитель. Что делает метод в первом случае, когда он не принимает аргументов? Как заменить этим методом следующий код:
while (std::cin.get() != '\n')
continue;
Т.е., я понимаю, что в cin.ignore() нужно передать два аргумента, при этом вторым должен быть '\n', но что передавать первым?
Ведь я не могу изначально знать какой длинны будет строка и сколько символов нужно будет пропустить: 10, 100, или 1000 или еще больше.
Пишите так:
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
(т.е. задаете максимальное значение для типа streamsize)
Сборка персонального компьютера от Artline: умный выбор для современных пользователей