Я читаю принципы и практику программирования Страустрапа с использованием C++. На стр. 287 он приводит пример под заголовком «Порядок оценки». Но я не совсем понимаю пример. Построенные «вялые» входы будут создаваться и уничтожаться каждый раз, пока кто-то не наберет «quit».Как заполнить этот вектор? Пример Stroustrup
Как бы изменить код, чтобы вектор v содержал каждую введенную строку? Как написано, я думаю, что v.size() никогда не будет больше, чем 1. Я хочу, чтобы он повторял цикл и вставлял все, зацикливаемое в вектор, вместо того, чтобы вставлять, удалять и вставлять в качестве циклов.
(код из книги)
vector <string> v; //this is defined globally
void function()
{
string s;
while(cin>>s && s!="quit")
{
string stripped;
string non_letters;
for (int i=0; i<s.size(); ++i)
if (isalpha(s[i]))
stripped +=i;
else
not_letters += s[i];
v.push_back(stripped);
}
}
Пожалуйста, введите реальный код. То, что вы разместили, - беспорядок, который не имеет смысла. –
@ Джерри Карсон: Это не нарушение авторских прав, если фрагменты кода являются «* для целей, таких как критика, комментарий, новости, обучение (включая несколько экземпляров для использования в классе), стипендию или исследование *« согласно [справедливому использованию ] (http://www.law.cornell.edu/uscode/17/107.html). Несомненно, этот вопрос подпадает под «научную» или «исследовательскую», или, возможно, даже «преподавательскую», поскольку на самом деле это весь смысл этого сайта. Нам нужно увидеть хотя бы ваш фактический фрагмент кода, чтобы помочь вам. –
* по причинам авторского права этот код не совсем такой же, как и код из книги * Не будет делать сэр, пожалуйста, разместите код в книге или, по крайней мере, свободный минималистский пример. –