Я бы, вероятно, поместил бы строку в поток строк, а затем использовал бы что-то вроде std::getline
для чтения строки за раз из потока строк.Если вы действительно беспокоитесь о скорости выполнения, есть более быстрые способы, но это будет очевидным первым выбором, пока профилирование не скажет вам, что это недопустимо.
Для чего стоит встроить новую строкув строку, вы можете использовать либо \n
, либо переключиться на использование строкового литерала:
string s = R"(Hello
Welcome
Oranges
Bananas
Hi
Triangle)";
С необработанным строковым литералом, встроенные новые строки (и все остальное) становятся частью строкисам.В обычном строковом литерале вы должны использовать \n
вместо этого (если вы хотите, чтобы он был переносимым, в любом случае).