#include <iostream>
#include <vector>
using namespace std;
int main()
{
string n, m;
vector <string> dingdong;
cin >> n;
dingdong.push_back(n);
cin >> m;
dingdong.push_back(m);
for (int i = 0; i <2; i ++) {
cout << dingdong[i];
}
return 0;
}
Когда я запускаю программу, и я ввожу «hay sombody there» и нажмите enter. Программа печатает «haysombody». Поэтому я решил, что если я увеличу «i» до 3, программа напечатает «haysombodythere», но нет, main просто падает. почему это происходит и как это сделать, чтобы сохранить все строки (включая пробелы)?Строка не сохраняется в векторе?
как бы я идти об этом если бы я передал строку «слово» в функцию класса. У меня: строка aboutwhat; cout << "Введите тему:" << endl; getline (cin, aboutwhat); человек. ЗаменаSubject (aboutwhat); cout << person.getSubject(); программа просто печатает «Введите тему» и завершает программу. – Jahaha
@Jahaha Это другой вопрос. Вы спрашиваете другого. Но в целом у вас есть некоторая сигнатура функции, например 'void foo (const std :: string & word);' или 'void foo (std :: string & word)'; зависит, нужно ли изменять параметр или нет. –