данными строки s
типа std::string
Я строй другого строку s2
как такстроит строку с итераторами
std::string(s.begin(), s.begin() + s.find(" "))
но следующий конструктор не работает
std::string(s.begin(), s.find(" "))
кто-нибудь знает почему? Я использую g++ 4.8.1 under Ubuntu amd64
Оба конструктора имеют итератор в качестве второго аргумента.
В этом примере я пытаюсь создать строку, содержащую первую подстроку, которая заканчивается там, где появляется первый пробел.
О, спасибо, я не знаю, почему я действительно был убежден в том, чтобы иметь дело с итератором, я предполагаю, что после многого с потоками и 'char' вы ожидаете чего-то подобного ... – user2485710
@ user2485710: Возможно, вы думали об алгоритме ['std :: find()'] (http://en.cppreference.com/w/cpp/algorithm/find), который возвращает итератор? – Johnsyweb
, скорее всего, да, но до сих пор не может понять, почему существует такой подход для пространства имен 'string ::'. В любом случае, спасибо. – user2485710