Самый быстрый способ изучить Повышение для возврата C++ / [закрытый] ветеран.NET

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

нет никакого права, или неправильно ответьте этому. Какой предпочтителен, просто зависит от ситуации. Например, если существует предел времени, когда необходимо завершить запрос, и необходимо сделать что-то полусложное с результатами, вторая версия могла быть предпочтительной. Но остерегайтесь больших наборов результатов, особенно при выполнении этого кода в 32-разрядном режиме. Я несколько раз кусался исключениями OutOfMemory при выполнении этого метода.

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

6
задан Mitch Wheat 27 July 2009 в 05:59
поделиться

4 ответа

Нет книги, которая охватывала бы Boost в целом. Мне пришлось начать изучать его 2 месяца назад, и я выбрал подход «узнай то, что тебе действительно нужно».

  1. Определите проблему
  2. Прочтите описания библиотек и выберите те, которые представляют интерес.
  3. Большинство из них довольно хорошо документированы и содержат несколько примеров / руководств, так что это не должно быть так уж плохо.
1
ответ дан 17 December 2019 в 00:12
поделиться

Вы не найдете книги, охватывающей все библиотеки ускорения. В настоящее время Boost включает более 80 библиотек.

Мой подход был следующим:

  1. Определить библиотеку, необходимую для решения текущей проблемы
  2. Зайдите на веб-сайт этой библиотеки, прочтите руководство или начните работу (там вы найдете изучите его шаг за шагом)
  3. По мере того, как вы разрабатываете эту библиотеку, вы будете получать все больше и больше вопросов, на которые можно ответить, проконсультировавшись по ссылке (не учебнику) библиотеки или отправив сообщение в списки рассылки boost. Списки рассылки Boost очень активны, и вы обычно получаете ответ в течение следующего часа.
  4. Я читал лишь несколько книг, чтобы понять «хардкорные» библиотеки: Modern C ++ Design от A. Alexandrescu и книга MPL от Abrahams & Gurtovoy.

Самыми важными книгами, которые я прочитал, были все книги Херба Саттера, потому что идиомы, используемые в Boost и особенно в STL, довольно хорошо обсуждаются там ( Exceptional C ++ , Более исключительный C ++ и исключительный стиль C ++ ). Мне также понравился 101 Coding Guidelines от Саттера и Александреску. Последняя книга больше похожа на краткое изложение наиболее важных идиом.

Александреску и книга MPL от Abrahams & Gurtovoy.

Самыми важными книгами, которые я читал, были все книги Херба Саттера, потому что идиомы, используемые в Boost и особенно в STL, довольно хорошо обсуждаются там ( Exceptional C ++, более исключительный C ++ и исключительный стиль C ++ ). Мне также понравился 101 Coding Guidelines от Саттера и Александреску. Последняя книга больше похожа на краткое изложение наиболее важных идиом.

Александреску и книга MPL от Abrahams & Gurtovoy.

Самыми важными книгами, которые я читал, были все книги Херба Саттера, потому что идиомы, используемые в Boost и особенно в STL, довольно хорошо обсуждаются там ( Exceptional C ++, более исключительный C ++ и исключительный стиль C ++ ). Мне также понравился 101 Coding Guidelines от Саттера и Александреску. Последняя книга больше похожа на краткое изложение наиболее важных идиом.

1
ответ дан 17 December 2019 в 00:12
поделиться

Это книга - очень хороший справочник, но я думаю, что он не совсем «быстрый». Хорошо, что на той же странице, InformIT, вы можете найти образец главы о boost :: bind. Эта библиотека похожа на автоматические указатели ускорения, это одна из библиотек ускорения, которые я использую для разработки любой программы на C ++ в своей повседневной работе. Другой - boost :: lambda, связанный с boost :: bind. Собственная документация по boost - очень хорошее руководство.

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

Чуть не забыл boost :: mpl (библиотека метапрограммирования). Опять же, официальная документация boost может вам помочь.

3
ответ дан 17 December 2019 в 00:12
поделиться

Я не вижу смысла изучать весь Boost сразу. Вы можете обратиться к Документация по Boost для получения информации о частях Boost, которые вам действительно нужны в вашей работе.

Есть книга - Помимо стандартной библиотеки C ++: Введение в Boost . Вы можете начать с чтения.

2
ответ дан 17 December 2019 в 00:12
поделиться
Другие вопросы по тегам:

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