Форум программистов, компьютерный форум CyberForum.ru

Ошибка при вызове wstring.erase - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Раздельная компиляция Namespace - Реализовать двусвязный список http://www.cyberforum.ru/cpp-beginners/thread1241505.html
В книге Страуструпа описана модульность с помощью namespace: stack.c - хранит реализацию stack.h- интерфейс user.c - использование. Там есть задачка реализовать двусвязный список по такому принципу. С алгоритмом списка проблем нет, а вот с именами беда. Для теста написал маленькую функцию, но и она не компилится ( main.obj : error LNK2019: ссылка на неразрешенный внешний символ "int...
C++ Как сложить две временные отметки в виде дни часы: минуты: секунды Здравствуйте! Подскажите пожалуйста, как сложить две временные отметки в виде дни часы: минуты: секунды? Спасибо! http://www.cyberforum.ru/cpp-beginners/thread1241485.html
C++ Обязательно ли объявление виртуального деструктора в абстрактном классе
Недавно выполнял задание, и забыл в абстрактном классе(использовалось наследование) объявить виртуальный диструктор. С точки зрения профессионального программирования, является ли это серьёзной ошибкой?
Поставить пароль на архив C++
Всем привет. Мне нужно программно сделать архив с паролем. Может есть такая библиотека, что бы там была такая функция? Я думаю использовать zlib, а там вроде такого нет, так что придется добавлять самому. Что посоветуете? Спасибо.
C++ Дружественный метод класса и ошибка доступа http://www.cyberforum.ru/cpp-beginners/thread1241423.html
class B; class A { public: void f(B& b); }; class B { private:
C++ Как подключить obj файл к проекту? Всем привет! Нужно подключить obj файл к проекту в котором есть нужный класс. Как это сделать в MVS 2010? подробнее

Показать сообщение отдельно
elektron5
Заблокирован
12.08.2014, 14:09  [ТС]     Ошибка при вызове wstring.erase
Цитата Сообщение от SatanaXIII Посмотреть сообщение
сирень квадрат
Писал расширенный вопрос пол часа, потом мне в ответ, что мол нельзя писать в одном слове русский и английские буквы, а таких слов и не было. В общем сообщение после нескольких злостных кликов пропало
Цитата Сообщение от SatanaXIII Посмотреть сообщение
Ошибку приведите пожалуйста.
error C2664: 'std::_String_iterator<std::_String_val<std::_Simple_types<wchar_t>>> std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>>::erase(std::_String_const_iterator<std::_String_val<std::_Simple_types<wchar_t>>>,std::_String_const_iterator<std::_String_val<std::_Simple_types<wchar_t>>>)' : cannot convert argument 1 from 'std::reverse_iterator<std::_String_iterator<std::_String_val<std::_Simple_types<wchar_t>>>>' to 'unsigned int'
1> No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
Добавлено через 4 минуты
Суть такова. Есть строка. Хочу пробежаться по ней в цикле с конца и найдя определённый символ удалить часть строки, начиная с этого символа до конца строки. Хочу сделать через итераторы, без них всё работает (ну если делать так - for(int i = testString.size() - 1; i != 0; i--). Причём на такой фокус:
C++
1
2
3
4
5
6
std::wstring testString = L"SHAKE YOUR TITS (. )^( .)";
for (auto it = testString.end(); it != testString.begin(); it--)
{
    if (*it == L'^')
        testString.erase(it, testString.end());
};
вообще вылетает экзепшен: string iterator not dereferencable

В первом посте я опечатался, там не it--, а it++, но к делу отношения это не имеет.
 
Текущее время: 08:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru