OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 28 Март, 2024 12:15

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 23 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Работа со строками
СообщениеДобавлено: Вторник, 10 Ноябрь, 2009 17:07 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
На работе программирую под .Net. Написал свою реализацию конкатенации и разрезания строк. От встроенных реализаций мои отличаются тем что не мусорят в динамической памяти паразитными объектами, а так же запоминают несколько предыдущих конкатенированных или порезанных строк, чтобы в случае повторения сразу выдать уже готовый ответ.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Работа со строками
СообщениеДобавлено: Вторник, 10 Ноябрь, 2009 21:57 

Зарегистрирован: Пятница, 24 Апрель, 2009 16:28
Сообщения: 563
Откуда: Москва
Интересно, но непонятно. Ну, с работой все ясно, а реализация-то на чем - на .Net или КП? И непонятно "в случае повторения" чего именно?
Если можно, приведите, пожалуйста, примеры.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Работа со строками
СообщениеДобавлено: Среда, 11 Ноябрь, 2009 11:38 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Реализация на C#.
Повторение - это просто когда хотят склеить строки, но недавно их же и склеивали, тогда новый объект не создаётся, а выдаётся закэшированный ранее полученный ответ. Тоже самое относится и к разрезателю строк.
Пример:
Код:
string uri = Strings.Concat("Имя пользователя", "@", "домен").
Splitter.Result r = Splitter.Split(uri, '@');
if (r.Length == 2)
{
  string user_name = r.Element0;
  string user_domain = r.Element1;
}

Splitter.Result -- структура из 7 элементов (а нам больше и не надо) размещаемая на стеке, то есть в динамической памяти мусора не создаётся (создаются только строки, да и те кэшируются).


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 23 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB