![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 6 Всего: 33 |
Нужна замена для std::string.
Работаю над программой, с приогромнейшим кол-вом строковых операций. Юзать "algorithm"-ы терпения не хватает. Кто нибудь, если есть сей класс, поделитесь, ну хоть ссылочкой. Спасибо. Это сообщение отредактировал(а) andrew_121 - 15.6.2008, 01:57 -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| anatox91 |
|
|||
![]() программист-самоучка ![]() ![]() Профиль Группа: Участник Сообщений: 699 Регистрация: 12.1.2008 Где: ++Украина.Крым++ Репутация: нет Всего: 13 |
ну наваляй что-то типа такого:
блин, че-то [code=cpp] не работает или это у меня только такие глюки? Это сообщение отредактировал(а) anatox91 - 15.6.2008, 09:47 -------------------- The code is the design © Sony VAIO VGN-FW480J ![]() |
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
А чем тебя не устраивает std::string?
-------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 6 Всего: 33 |
anatox91 - Думал что я не один такой, кого std::string неустраивает. Да, похоже придется ваять нечто STL совместимое.
Добавлено через 1 минуту и 8 секунд bronislav - Да функционал никакой! Вот QString - это тема! -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| yar |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 101 Регистрация: 8.9.2007 Где: Одесса, Украина Репутация: нет Всего: 8 |
std::string можно использовать с Boost String Algorithms Library..
Там много дополнительного функционала, не включённого в STL. --------------------
Если бы строители возводили здания так, как программисты пишут программы, первый же дятел уничтожил бы мировую цивилизацию.Джеральд Вайнберг |
|||
|
||||
| anatox91 |
|
|||
![]() программист-самоучка ![]() ![]() Профиль Группа: Участник Сообщений: 699 Регистрация: 12.1.2008 Где: ++Украина.Крым++ Репутация: нет Всего: 13 |
-------------------- The code is the design © Sony VAIO VGN-FW480J ![]() |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
QString это BLOB(антипаттерн) алгоритмы + boost и QString нервно курит в сторонке, string конечно то-же огромен, но там практичесски нет функционала для обработки строк, это предпологается делать средствами STL, которые пора-бы уже и знать к тому-же QString только Unicode, иногда нужен ASCII |
|||
|
||||
| andrew_121 |
|
||||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 6 Всего: 33 |
Lazin
Согласен. Зато функционал какой !!!
Да влом постояно алгоритмы тягать, писанины много! -------------------- Удалил аккаунт. Прощайте! |
||||
|
|||||
| Mayk |
|
|||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 45 Всего: 134 |
-------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
| georain |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 193 Регистрация: 28.11.2006 Где: Санкт-Петербург Репутация: нет Всего: нет |
andrew_121, может сделать класс производный от std::string и добавить методы использующие алгоритмы?
|
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 6 Всего: 33 |
Да, походу так и придется делать. -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
ASCII иногда приходится использовать для поддержки старых интерфейсов, я сейчас работаю над проектом, в котором используется ascii, так как объемы обробатываемого текста оч. большие, а все программы, которые со мной взаимодействуют юникод не понимают и им все-равно приходится отдавать в cp_1251
стандартные алгоритмы работают с string - find replace for_each... etc всякие split join trim итд есть в boost QString не каждый может себе позволить использовать.. так-что лучше использовать то-что стандартно |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
Зачем? Чем сторонняя функция хуже метода? И вообще, есть правило, если имеющегося публичного интерфейса класса достаточно для реализации задачи с помощью внешней функции, то именно так и надо делать. Класс стринг (да, да, именно std::string) вообще считается перегруженным. Большинство встроенных методов там просто не нужны. Чего только стоит наличие двух интерфейсов - под итераторы и под индексы. |
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 6 Всего: 33 |
bsa - Как-то влом ипользовать алгоритмы. Проще(мне так кажется), все необходимое впихнуть в класс.
Так от какого наследовать чтоб разные компилеры не ругались? Ну придется, сей хедер с проектом тягать, ну и ладно. Нашел я в инете пару классов замещающих "std::string", ток они староваты, и MSVC-2008 и MinGW32, жутко ругаются на них. Вот, гляжу, пытаюсь понять. Кстати, вот они. "basic_string" - вроди замена стантартной. Это сообщение отредактировал(а) andrew_121 - 15.6.2008, 20:11 Присоединённый файл ( Кол-во скачиваний: 10 )
basic_string.rar 80,89 Kb-------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 15 Всего: 118 |
andrew_121 ну так запихай... наследование никто не отменял.
наследуйся от того что определишь в рантайме) нечто вроде class WMyString::public wstring{}; как вариант примени агрегирование и вынеси то что тебе надо "наружу" вы учитете, что используя нечто "стороннее" есть шанс искать чужие баги.. Это сообщение отредактировал(а) jonie - 15.6.2008, 20:03 -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |