Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Нужна замена для std::string, Нужна замена для std::string 
V
    Опции темы
Lazin
Дата 16.6.2008, 18:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 41
Всего: 154



Цитата(andrew_121 @  16.6.2008,  17:01 Найти цитируемый пост)
Понял. Нужно писать свой класс. Унаследоваться от std::string, впихнуть в него все что нужно.

все, я сюда больше не пишу smile 
распинался, распинался и бестолку, на всякий случай - информация к размышлению smile 
блин, да-же в .NET строки не умеют столько, сколько ты хочешь smile  
PM MAIL Skype GTalk   Вверх
andrew_121
Дата 16.6.2008, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Цитата(bsa @  16.6.2008,  17:37 Найти цитируемый пост)
Как ты ее напишешь - сугубо на твоей совести

Замечательно сказано  smile 
Цитата(bsa @  16.6.2008,  17:37 Найти цитируемый пост)
зачем стринг разбирать и более того, парсить?

Пограмма - html, php - парсер. Типа препроцессора у нас, у программеров. В программе 14248 строк. Писана не мной. Есть шесть глюков.
Когда я начал пялиться в код....это было что-то... smile  smile 
Код, до того безобразно написан, что я, каждый файл, форматирую(вручную), и походу выискиваю бяки.

У меня внатуре дилемма !!!


Это сообщение отредактировал(а) andrew_121 - 16.6.2008, 19:55


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
bronislav
Дата 16.6.2008, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 334
Регистрация: 29.1.2008
Где: Украина::Донецк

Репутация: нет
Всего: 3



Цитата(andrew_121 @  16.6.2008,  18:24 Найти цитируемый пост)
В программе 14248 строк.

Ну в принципе не так уж и много

Я как-то программу на Delphi на 16к строк перевел на C++ за 3 недели smile
Правда впетчатления те еще smile 


--------------------
user posted image
иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes
PM MAIL   Вверх
andrew_121
Дата 16.6.2008, 19:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Цитата(bronislav @  16.6.2008,  19:49 Найти цитируемый пост)
Я как-то программу на Delphi на 16к строк перевел на C++ за 3 недели

Следовало внести в книгу рекордов(настойчивости).


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
bronislav
Дата 16.6.2008, 19:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 334
Регистрация: 29.1.2008
Где: Украина::Донецк

Репутация: нет
Всего: 3



Цитата(andrew_121 @  16.6.2008,  18:24 Найти цитируемый пост)
каждый файл, форматирую(вручную),


Вообще-то для таких вещей есть рефакторинг.
Тот же еклипс умеет автоматически переформатировать код в соостветствии с выбранным стилем



--------------------
user posted image
иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes
PM MAIL   Вверх
andrew_121
Дата 16.6.2008, 20:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Цитата(bronislav @ 16.6.2008,  19:56)
Цитата(andrew_121 @  16.6.2008,  18:24 Найти цитируемый пост)
каждый файл, форматирую(вручную),


Вообще-то для таких вещей есть рефакторинг.
Тот же еклипс умеет автоматически переформатировать код в соостветствии с выбранным стилем

Так я в ручную, для того-что бы понять, и вкурить сею рукопись.(ух как заговорил)


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
bsa
Дата 16.6.2008, 20:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



мы отошли от темы.
я уже упоминал правило, если какую-то задачу можно решить отдельной функцией с использованием открытого интерфейса класса, то так и надо делать. Более того, даже оператор сложения надо определять внешней функцией (так как есть конструктор копирования и метод конкатенции).

Кстати запись text.extractValue("name", &var); по длине равна: extractValue(text, "Name", &var); Зато вторая не перегружает интерфейс класса лишним.
Что тебе еще надо? toInt, toDouble? Ну если тебе кажется boost::lexical_cast слижком громоздким, то напиши для него соответствующие враперы: 
Код
namespace {
template<class T>
inline double toDouble(const T &v)
{
    return boost::lexical_cast<double>(v);
}

template<class T>
inline int toInt(const T &v)
{
    return boost::lexical_cast<int>(v);
}
//и так далее...
} //namespace
В итоге запись будет выглядеть так: double t = toDouble(text); Обрати внимание, что в данном случае запись получилась даже короче, чем если бы toDouble() был реализован в виде метода (нет точки). Более того, даже если у тебя text содержал что-то непереводимое в double, то будет кинуто исключение.
PM   Вверх
andrew_121
Дата 16.6.2008, 20:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



bsa - Спасибо.
Решено - boost respect !
Alek86 
Цитата

у буста есть утилитка, с помощью котрой можно "вытаскивать" из него определенные библиотеки с их зависимостями

Кто нибудь знает что это за тулза такая?


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
Lazin
Дата 16.6.2008, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 41
Всего: 154



Цитата(andrew_121 @  16.6.2008,  20:38 Найти цитируемый пост)
у буста есть утилитка, с помощью котрой можно "вытаскивать" из него определенные библиотеки с их зависимостями

которую лучше не использовать.. если не хотите гемороя с обновлением этой библиотеки smile 
PM MAIL Skype GTalk   Вверх
bsa
Дата 16.6.2008, 20:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



andrew_121, зачем тебе эта утилита?
Пишешь в документации к проекту, что для его сборки нужен boost, версии не ниже такой-то. И все. Остальное на совести тех, кто будет собирать.
PM   Вверх
andrew_121
Дата 16.6.2008, 20:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Всем приогромнейшее Спасибо.
Тема закрыта.


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
Alek86
Дата 17.6.2008, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1299
Регистрация: 30.1.2007
Где: Киев

Репутация: 21
Всего: 25



опоздал, но все же
Цитата(andrew_121 @  16.6.2008,  17:01 Найти цитируемый пост)
А чё за зверь? Как звать? И много за собой тянет?

сюда смотри


Цитата(Lazin @  16.6.2008,  20:51 Найти цитируемый пост)
которую лучше не использовать.. если не хотите гемороя с обновлением этой библиотеки

нуну
и часто ты буст обновляешь?


--------------------
user posted image    user posted image
PM MAIL   Вверх
Lazin
Дата 17.6.2008, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 41
Всего: 154



Цитата(Alek86 @  17.6.2008,  10:12 Найти цитируемый пост)
нуну
и часто ты буст обновляешь? 

когда выходят новые версии, а теперь представь, что мне еще что-нибудь захотелось из буста использовать, мне еще вырезать кусочек))

Цитата(http://www.boost.org/doc/libs/1_35_0/tools/bcp/bcp.html)

The bcp utility is a tool for extracting subsets of Boost, it's useful for Boost authors who want to distribute their library separately from Boost, and for Boost users who want to distribute a subset of Boost with their application.

в общем это очень не для всех... smile 

Это сообщение отредактировал(а) Lazin - 17.6.2008, 10:34
PM MAIL Skype GTalk   Вверх
Alek86
Дата 17.6.2008, 10:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1299
Регистрация: 30.1.2007
Где: Киев

Репутация: 21
Всего: 25



Цитата(Lazin @  17.6.2008,  10:33 Найти цитируемый пост)
for Boost users who want to distribute a subset of Boost with their application.

я про это и говорил - человек не хочет весь буст с собой таскать

Цитата(Lazin @  17.6.2008,  10:33 Найти цитируемый пост)
когда выходят новые версии

а зачем его обновлять, если, допустим, операции для строк не поменялись?
или поменялись, но тебе те изменения побоку
твое же и так работает

Цитата(Lazin @  17.6.2008,  10:33 Найти цитируемый пост)
что мне еще что-нибудь захотелось из буста использовать,

ну ты прям щас как автор темы насчет класса строк говоришь smile
чтобы таксать с собой этакую God Library, в которой есть все
для того, чтобы "если что" не нужно было добавлять лишние файлы


--------------------
user posted image    user posted image
PM MAIL   Вверх
Lazin
Дата 17.6.2008, 11:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 41
Всего: 154



Цитата(Alek86 @  17.6.2008,  10:45 Найти цитируемый пост)
я про это и говорил - человек не хочет весь буст с собой таскать

архив трудно распаковать? smile 

странные вы люди, значит буст с собой таскать как библиотеку - зло, а отрезать от него кусок и сделать частью своего проекта - гут smile 



Цитата(Alek86 @  17.6.2008,  10:45 Найти цитируемый пост)
ну ты прям щас как автор темы насчет класса строк говоришь smile
чтобы таксать с собой этакую God Library, в которой есть все
для того, чтобы "если что" не нужно было добавлять лишние файлы 

знаешь, класс и набор библиотек - немного разные вещи))
PM MAIL Skype GTalk   Вверх
Страницы: (4) Все 1 2 [3] 4 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0608 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.