Название: Вопрос по контейнеру Vector. Отправлено: xruss от Декабрь 25, 2017, 15:22 Всем привет! а тут можно пообсуждать STL по части контейнеров? Есть ли в STL в контейнере Vector возможность работать с русскими символами в std::vector<string>? Пытался применять метод std::transform(ftext.begin(), ftext.end(), ftext.begin(), ::tolower); он вроде не понимает русской utf-8 :( Как думаете в этом случае возможно использовать только QT-шный QString или я не правильно что-то делаю?
Название: Re: Вопрос по контейнеру Vector. Отправлено: ViTech от Декабрь 25, 2017, 15:39 Контейнер тут не при чём, нужно смотреть в сторону строк и локалей. Помимо std::string есть ещё std::wstring. Содержать они могут много чего, зависит от кодировки и локали. Localization library (http://en.cppreference.com/w/cpp/locale), header <locale> (http://en.cppreference.com/w/cpp/header/locale), std::tolower(std::locale) (http://en.cppreference.com/w/cpp/locale/tolower).
Название: Re: Вопрос по контейнеру Vector. Отправлено: Авварон от Декабрь 25, 2017, 18:26 wstring считай нет, потому что у него на винде размер другой (wchar_t - 32 бита)
Название: Re: Вопрос по контейнеру Vector. Отправлено: xruss от Январь 05, 2018, 18:17 Спасибо за ответы, я попробовал, но у меня получилось только с QString :)
А вот с обыцным STL не получается вообще собрать контейнер vector со строками(( Написал программу - аналог Linux`овского tac (выводит строки с последней к первой). ошибка в коде: Код: /home/pavel/programming/analog_tac/main.cpp:35: ошибка: no matching function for call to 'std::vector<std::__cxx11::basic_string<char> >::end(std::__cxx11::string&)' Вот такой код: Код: #include <QCoreApplication> Подскажите, пожалуйста - почему он меня не понимает? :) Название: Re: Вопрос по контейнеру Vector. Отправлено: Igors от Январь 06, 2018, 11:48 Для прохода задом наперед нужно использовать реверсные итераторы rbegin и rend
Код Ось малюнок (http://en.cppreference.com/w/cpp/container/vector/rbegin). А если контейнер прямого доступа то с этим страхомудием можно не связываться, просто так Код Ну и вообще, итератор - это еще не само значение, a то что на него "указывает" (хотя и не указатель) Название: Re: Вопрос по контейнеру Vector. Отправлено: xruss от Январь 06, 2018, 15:02 to Igors: Ура! заработало) спасибо большое! :)
|