Используя Повышение на человечности

Два 50 миль буфера частично перекрывают друг друга. Записи, расположенные в общей зоне (например, Foo в вашем примере), находятся в пределах 50 миль от двух почтовых индексов. В других местах записи находятся менее чем в 50 милях от одного почтового индекса, но дальше, чем 50 миль от другого почтового индекса.

На изображении ниже только зеленая область находится в пределах 50 миль от обоих почтовых индексов, поэтому записи, расположенные в этой области, будут возвращаться обоими запросами.

enter image description here

15
задан Kredns 20 August 2013 в 12:47
поделиться

6 ответов

Согласен; веб-сайт поддержки по большей части имеет хорошие руководства, разбитые по подбиблиоткам.

Что касается компиляции, то 80% реализации библиотеки определяется в файлах заголовков, что делает компиляцию тривиальной. например, если вы хотите использовать shared_ptr, вы просто добавляете

#include <boost/shared_ptr.hpp>

и компилируете как обычно. Не нужно добавлять пути к библиотекам в вашу команду g ++ или указывать -llibboost. Пока каталог boost находится в вашем пути включения, все готово.

Из документации boost:

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

  • Boost.Filesystem
  • Boost.IOStreams
  • Boost.ProgramOptions
  • Boost.Python (см. Boost.
18
ответ дан 1 December 2019 в 02:46
поделиться

На веб-сайте Boost есть несколько хороших руководств, они просто скрыты.

5
ответ дан 1 December 2019 в 02:46
поделиться

Документация библиотеки неоднозначна. Некоторые из них хороши, но некоторые являются скорее справочником, чем руководством. Лучшее руководство по (некоторым) библиотекам Boost - это книга Помимо стандартной библиотеки C ++ . По крайней мере, введение дает описание многих библиотек одним абзацем. Оттуда вы можете решить, какая библиотека наиболее важна для ваших текущих потребностей, и, если она есть в книге, прочитать о ней главу или прочитать документацию на веб-сайте.

Если вы читаете по-немецки, есть ] хорошее онлайн-руководство . Google translate достаточно хорошо справляется со своей задачей, и такой человек, как я, не может это понять.

Кроме того, если у вас нет большого опыта работы с C ++, я бы начал с более простых библиотек (например, smart_ptr, tuple, conversion, tokenizer, регулярное выражение, date_time, test),

3
ответ дан 1 December 2019 в 02:46
поделиться

Библиотеки поставляются с документацией, и многие из них содержат учебные пособия как часть документации. Просто начните читать.

-2
ответ дан 1 December 2019 в 02:46
поделиться

Boost - это не язык программирования и не платформа приложений - поскольку это всего лишь набор библиотек, не существует такой вещи, как программа Boost «Hello World». Большинство библиотек в Boost можно использовать более или менее независимо, и они различаются по размеру от одной функции до массивных библиотек, которые могут работать автономно.

Лучший способ узнать Boost - это просто попробовать поработать с ним, когда вы пишете новый код. По возможности используйте smart_ptr ; используйте MPL в следующий раз, когда захотите выполнить работу во время компиляции. В Boost много разнообразия, но вам, вероятно, стоит заглянуть в раздел «Утилиты»; это самые легкие и наиболее часто используемые библиотеки.

-2
ответ дан 1 December 2019 в 02:46
поделиться

Using Easypeasy 1.1 (for netbooks) which is based upon Ubuntu I was able to use Synaptic Package Manager to install, I believe, libboost-dev. Then simply by adding:

#include "boost/foreach.hpp"

I was able to replace the existing lines in an existing application (which has an Ask class which has nothing to do with boost):

for (std::vector<Ask*>::iterator ii=ui.begin(); ii!=ui.end(); ++ii)
    std::cout << (*ii)->prompt() << (*ii)->answer() << std::endl;

with:

BOOST_FOREACH (Ask* ii, ui)
     std::cout << ii->prompt() << ii->answer() << std::endl;

As I understand it this is a header only feature. I have not used anything requiring link time changes yet.

3
ответ дан 1 December 2019 в 02:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: