Что за билиотека BOOST
От: Ramzes14  
Дата: 05.06.04 10:46
Оценка:
Сорри за ламерность
... << RSDN@Home 1.1.3 stable >>
Re: Что за билиотека BOOST
От: unrealalex Россия  
Дата: 05.06.04 10:58
Оценка: +1 :)
Здравствуйте, Ramzes14, Вы писали:

R>Сорри за ламерность

www.boost.org

P.S.
а в google или на rsdn в поиске набрать boost религия не позволяет?
соори, за несдержанность.
Невозможное мы сделаем сегодня — чудо займет немного больше времени. /Аноним/
Re[2]: Что за билиотека BOOST
От: Ramzes14  
Дата: 05.06.04 11:02
Оценка:
Здравствуйте, unrealalex, Вы писали:

где она находится я нашел меня интересовало что
это и с чем её едят
... << RSDN@Home 1.1.3 stable >>
Re[3]: Что за билиотека BOOST
От: Satrapp Россия  
Дата: 05.06.04 11:15
Оценка:
Здравствуйте, Ramzes14, Вы писали:

R>Здравствуйте, unrealalex, Вы писали:


R>где она находится я нашел меня интересовало что

R>это и с чем её едят
поиск
... << Rsdn@Home 1.1.4 beta 1 >>
Re[3]: Что за билиотека BOOST
От: unrealalex Россия  
Дата: 05.06.04 11:19
Оценка: 3 (1)
Здравствуйте, Ramzes14, Вы писали:

R>Здравствуйте, unrealalex, Вы писали:


R>где она находится я нашел меня интересовало что

R>это и с чем её едят
1. Boost Consulting. About Boost
2. MSDN. Boost for Visual C++ Developers
3. Boost. Boost Libraries
Невозможное мы сделаем сегодня — чудо займет немного больше времени. /Аноним/
Что за библиотека BOOST
От: Dog  
Дата: 05.06.04 16:03
Оценка: 10 (4) +1 :))) :)
#Имя: FAQ.cpp.whatisboost
R>где она находится я нашел, меня интересовало что
R>это и с чем её едят
... цитирую при жизни

... boost заметно удешевляет разработку продуктов, а также близкое знакомство разработчиков с этой библиотекой воспитывает, учит их правильному минималистическому дизайну равно как блестящему пониманию и владению c++. Также знакомство с boost'ом помогает отучать разработчиков на трату рабочего времени на написание велосипедов, зачастую крайне низкокачественных.

Негативной стороной для начальства является то, что разработчики начинают стоить больше и могут перестать довольствоваться текущей зарплатой.

Почему boost? Потому что boost — это место номер 1 для самых блестящих идей и их реализаций, это то место, которое определяет в каком направление движется развитие c++, каким мы его увидим через пять лет (а мы его несомненно увидим тогда), что будет тогда в c++ и стандартной библиотеке. Также boost содержит ряд компонентов, которые являются компонентами первой необходимости (bind, function, smart pointers, variant, regex, test,... you name it), без которых просто немыслимо написание краткого, выразительного, эффективного и современного кода.

Также думаю, что разрабочикам, у которых есть желание не просто просиживать штаны на работе убивая время, а которые хотят создавать что-то и двигаться, которые хотят зарабатывать больше производя в то же время больше и лучше, будет интересно это узнать, и потратить на это даже не рабочее, а личное время, где-нить в Molly Gwynns на Новом Арбате за кружкой отличного британского пива.

(c) Maxim Yegorushkin


зы. пора заносить это в faq.
Re[4]: Что за билиотека BOOST
От: adontz Грузия http://adontz.wordpress.com/
Дата: 05.06.04 20:55
Оценка: :))
Здравствуйте, Dog, Вы писали:

Dog>зы. пора заносить это в faq.


Неокторые дети подземелья утверждаи, что это дешёвый пиар
A journey of a thousand miles must begin with a single step © Lau Tsu
Re: Что за билиотека BOOST
От: alnsn Великобритания http://nasonov.blogspot.com
Дата: 06.06.04 09:05
Оценка:
Вопрос действительно для ЧаВо секции. Поэтому не буду отвечать, а скажу, что
бустовцы это классные ребята и супер профи. На них стоит равнятся. Изучение
документации буста (а еще лучше кода) и использование библиотек повысит
твой профессионализм в разы. Так что не стесняйся, спрашивай. Тебе ответят.
Я правда тут не часто появляюсь, к сожалению. Занят разными интересными
вещами. Надеюсь, скоро расскажу про них.
--
Bitte ein Bit
Posted via RSDN NNTP Server 1.9 alpha
Re[2]: Что за билиотека BOOST
От: LaptevVV Россия  
Дата: 09.06.04 08:43
Оценка: :)
Здравствуйте, alnsn, Вы писали:

A>Вопрос действительно для ЧаВо секции. Поэтому не буду отвечать, а скажу, что

A>бустовцы это классные ребята и супер профи. На них стоит равнятся. Изучение
A>документации буста (а еще лучше кода) и использование библиотек повысит
A>твой профессионализм в разы. Так что не стесняйся, спрашивай. Тебе ответят.
A>Я правда тут не часто появляюсь, к сожалению. Занят разными интересными
A>вещами. Надеюсь, скоро расскажу про них.
Слово "буст" у меня упорно превращается в "дуст", а слово "кода" почемуто упорно читается "кодта".
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: Что за билиотека BOOST
От: Alexey Chen Чили  
Дата: 09.06.04 09:17
Оценка: 15 (4) :))) :)))
Здравствуйте, Ramzes14, Вы писали:

R>Сорри за ламерность

Тот кто не знает, но пытается узнать не ламер. Ламер тот, кто считает, что знает все.

Трактовка первая

BOOST — это _полигон_ на котором опробуются различные С++ методики программирования и различные алгоритмические конструкции.
Его очень полезно посмотреть, для общего развития, так сказать.
Хотя, кто-то и говорит, что это супер либа, которая решит все твои проблемы и тебе это ничего не будет стоить... Нда.

Трактовка вторая

BOOST — это древнее магическое заклинание. Согласно древним свиткам, если указать его в резюме или произнести на собеседовании растопырив пальцы, можно получить более высокую зарплату. Также, это магическое слово может быть использовано в споре, как аргумент убийственный силы.
Re[2]: Что за билиотека BOOST
От: Кодт Россия  
Дата: 09.06.04 11:48
Оценка: :)
Здравствуйте, Alexey Chen, Вы писали:

AC>BOOST — это _полигон_ на котором опробуются различные С++ методики программирования и различные алгоритмические конструкции.

AC>Его очень полезно посмотреть, для общего развития, так сказать.
AC>Хотя, кто-то и говорит, что это супер либа, которая решит все твои проблемы и тебе это ничего не будет стоить... Нда.

Мы наступили на грабли в другой библиотеке — Loki. Тоже вся такая красивая, но без кувалдоскопии, этической силы и бениной матери обойтись не удалось.
Мораль: надевайте пробковый шлем.
Перекуём баги на фичи!
Re[4]: Что за билиотека BOOST
От: dad  
Дата: 09.06.04 19:46
Оценка: 15 (1) :))
Dog>

Dog>Также думаю, что разрабочикам, у которых есть желание не просто просиживать штаны на работе убивая время, а которые хотят создавать что-то и двигаться, которые хотят зарабатывать больше производя в то же время больше и лучше, будет интересно это узнать, и потратить на это даже не рабочее, а личное время, где-нить в Molly Gwynns на Новом Арбате за кружкой отличного британского пива.

вот этот абзац интересный очень. при втором прочтении раскрывается так:
Разработчикам будет интересно потратить свое личное время где-нибудь в кабаке за банкой пива.
Веру-ю-у! В авиацию, в научную революци-ю-у, в механизацию сельского хозяйства, в космос и невесомость! Веру-ю-у! Ибо это объективно-о! (Шукшин)
Re[3]: Что за билиотека BOOST
От: Димчанский Литва http://dimchansky.github.io/
Дата: 10.06.04 09:45
Оценка:
Здравствуйте, Кодт, Вы писали:
К>Мы наступили на грабли в другой библиотеке — Loki. Тоже вся такая красивая, но без кувалдоскопии, этической силы и бениной матери обойтись не удалось.
К>Мораль: надевайте пробковый шлем.

А где там грабли? Не в функторах ли?
... << Rsdn@Home 1.1.4 beta 1 >>
Re[4]: Что за билиотека BOOST
От: Кодт Россия  
Дата: 10.06.04 11:18
Оценка: 19 (5)
Здравствуйте, Димчанский, Вы писали:

Д>Здравствуйте, Кодт, Вы писали:

К>>Мы наступили на грабли в другой библиотеке — Loki. Тоже вся такая красивая, но без кувалдоскопии, этической силы и бениной матери обойтись не удалось.
К>>Мораль: надевайте пробковый шлем.

Д>А где там грабли? Не в функторах ли?


Во-первых, в функторах: там все связанные аргументы передаются "оптимальным" способом, то есть по ссылке
Попробуйте такой функтор вынести за пределы контекста (вернуть из функции, или поместить в очередь).
В бюсте же — по значению, но если кого-то колбасит от тучи копий (или если аргумент не copy constructible), то можно использовать прокладки ref(), cref().

Во-вторых, аллокатор маленьких объектов имеет статические переменные. Если код разделяется между несколькими DLL, это приводит понятно к чему. Пришлось вынести эти переменные в .cpp-файл, и сделать Loki.dll

В-третьих, политика убийства синглетонов плохо уживается с DLL. Пришлось написать собственную политику явного расстрела, и убивать синглетоны из DllMain.
Перекуём баги на фичи!
Re: Что за билиотека BOOST
От: ioni Россия  
Дата: 10.06.04 12:00
Оценка:
Здравствуйте, Ramzes14, Вы писали:

народ а слабо придумать расшифровку для абревиатуру BOOST
хотя бы даже на русском для БУСТ
Re[2]: Что за билиотека BOOST
От: Кодт Россия  
Дата: 10.06.04 12:07
Оценка: 17 (3) :))
Здравствуйте, ioni, Вы писали:

I>Здравствуйте, Ramzes14, Вы писали:


I>народ а слабо придумать расшифровку для абревиатуру BOOST

I>хотя бы даже на русском для БУСТ

Basic Object-Oriented Set of Templates
Базовый Универсальный Сборник Темплейтов
(или Юзабельный )
Перекуём баги на фичи!
Re[3]: Что за билиотека BOOST
От: PPA Россия http://flylinkdc.blogspot.com/
Дата: 11.06.04 03:14
Оценка: +1
Здравствуйте, Кодт, Вы писали:

К>Мы наступили на грабли в другой библиотеке — Loki. Тоже вся такая красивая, но без кувалдоскопии, этической силы и бениной матери обойтись не удалось.

К>Мораль: надевайте пробковый шлем.

Можно подробнее про грабли в локи?
... << Rsdn@Home 1.1.4 beta 1 >>
Re[4]: Что за билиотека BOOST
От: Кодт Россия  
Дата: 11.06.04 09:16
Оценка:
Здравствуйте, PPA, Вы писали:

PPA>Можно подробнее про грабли в локи?


http://rsdn.ru/Forum/?mid=674601
Автор: Кодт
Дата: 10.06.04


Пример: захотел я сделать очередь команд.
std::queue<Loki::Functor<void> > the_queue;

void worker_thread()
{
  while(true)
  {
    // ну там семафор, критсекция и прочее - пропускаю для краткости
    if(the_queue.empty()) { sleep(); continue; }
    the_queue.front()(); // выполнить
    the_queue.pop();
  }
}

void command(const std::string& s)
{
  cout << s << endl;
}

void schedule_command()
{
  the_queue.push(Loki::Bind(command, std::string("hello")));
  // тут мы разрушаем временный объект - строку, и приводим функтор в очереди в инвалидное состояние
}

Вместо этого я должен сделать так:
void command(const std::string* ps)
{
  cout << *ps << endl;
  delete ps;
}

void schedule_command()
{
  the_queue.push(Loki::Bind(command, new std::string("hello")));
}
Перекуём баги на фичи!
Re[5]: Что за билиотека BOOST
От: Димчанский Литва http://dimchansky.github.io/
Дата: 11.06.04 09:30
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Пример: захотел я сделать очередь команд.


а в boost как это будет выглядеть? (в смысле использование функторов)
... << Rsdn@Home 1.1.4 beta 1 >>
Re[6]: Что за билиотека BOOST
От: Кодт Россия  
Дата: 11.06.04 09:44
Оценка:
Здравствуйте, Димчанский, Вы писали:

Д>а в boost как это будет выглядеть? (в смысле использование функторов)


А так и будет:
std::queue<boost::function0<void> > the_queue;

void command(std::string s) // расплата за время жизни - конструирование копий
{
  cout << s;
}

void schedule()
{
  the_queue.push(boost::bind(command, std::string("hello")));
}
Перекуём баги на фичи!
Re[7]: Что за билиотека BOOST
От: Димчанский Литва http://dimchansky.github.io/
Дата: 11.06.04 10:20
Оценка:
Здравствуйте, Кодт, Вы писали:

А нельзя как-нибудь, чтобы так?
std::queue<boost::function0<void> > the_queue;

void command(const std::string& s)
{
  cout << s;
}

void schedule()
{
  the_queue.push(boost::bind(command, std::string("hello")));
}
... << Rsdn@Home 1.1.4 beta 1 >>
Re[8]: Что за билиотека BOOST
От: Кодт Россия  
Дата: 11.06.04 11:08
Оценка:
Здравствуйте, Димчанский, Вы писали:

Д>А нельзя как-нибудь, чтобы так?

Д>
Д>void command(const std::string& s)
Д>{
Д>  cout << s;
Д>}
Д>

Наверно, можно... я так особо не копался. Тем более, что в проекте уже используется Локи.
Перекуём баги на фичи!
Re[8]: Что за билиотека BOOST
От: ArtDenis Россия  
Дата: 11.06.04 14:00
Оценка: -1
Здравствуйте, Димчанский, Вы писали:

Д>А нельзя как-нибудь, чтобы так?

Д>
Д>std::queue<boost::function0<void> > the_queue;
Д>void command(const std::string& s)
Д>...
Д>


Можно:
std::queue<boost::function1<void, const std::string&> > the_queue

// всё остальное как у тебя
... << Rsdn@Home 1.1.4 beta 1 >>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re[9]: Что за билиотека BOOST
От: Кодт Россия  
Дата: 11.06.04 14:18
Оценка:
Здравствуйте, ArtDenis, Вы писали:

AD>Можно:

AD>
AD>std::queue<boost::function1<void, const std::string&> > the_queue

AD>// всё остальное как у тебя
AD>

И спрашивается, откуда я буду брать аргументы для этих функторов?
Перекуём баги на фичи!
Re[10]: Что за билиотека BOOST
От: ArtDenis Россия  
Дата: 11.06.04 14:44
Оценка:
Здравствуйте, Кодт, Вы писали:

К>И спрашивается, откуда я буду брать аргументы для этих функторов?


Не понял Что ты имеешь ввиду?
... << Rsdn@Home 1.1.4 beta 1 >>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re[11]: Что за билиотека BOOST
От: Кодт Россия  
Дата: 11.06.04 14:51
Оценка:
Здравствуйте, ArtDenis, Вы писали:

К>>И спрашивается, откуда я буду брать аргументы для этих функторов?


AD>Не понял Что ты имеешь ввиду?


queue<function<void,const string&> > the_queue;

void worker_thread()
{
  ...
  the_queue.front()( ????? ); // откуда я возьму аргумент?
  the_queue.pop();
  ...
}

void command1(const string& s) { ... }
void command2(const string& s) { ... }
void command3() { ... }

void schedule_command()
{
  switch(rand() % 3 + 1)
  {
  case 1:  the_queue.push( command1 ); // как передать аргумент?
  case 2:  the_queue.push( command2 ); // это к вопросу о том, почему бы не сделать просто очередь аргументов
  case 3:  the_queue.push( command3 ): // ага, щаз. несовпадение типов
  }
}
Перекуём баги на фичи!
Re[12]: Что за билиотека BOOST
От: ArtDenis Россия  
Дата: 11.06.04 14:58
Оценка:
Здравствуйте, Кодт, Вы писали:

AD>>Не понял Что ты имеешь ввиду?

К>
К>queue<function<void,const string&> > the_queue;

К>void worker_thread()
К>{
К>  ...
К>  the_queue.front()( ????? ); // откуда я возьму аргумент?
К>  the_queue.pop();
К>  ...
К>


Да, прогладел, извиняюсь.
Сессия, однако...

Но с другой стороны можно оставить и
void command(const std::string& s)

т.к. boost::bind будет хранить аргумент функтора.
... << Rsdn@Home 1.1.4 beta 1 >>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.