Эффективный и современный С++. 42 рекомендации по использованию С++11 и С++14 | страница 3
Пестрый голубь в Новом Южном Уэльсе считается видом, находящимся под угрозой исчезновения из-за изменения среды обитания — лесозаготовок, очистки и улучшения земель, а также вырубки камфорного лавра без адекватной альтернативы.
Многие из животных, представленных на обложках O'Reilly, находятся под угрозой исчезновения. Все они имеют очень важное значение для нашего мира. Чтобы узнать больше о том, как вы можете помочь им, посетите сайт >animals.oreilly.com
.
Изображение для обложки взято из Иллюстрированной истории природы Вуда (Wood), из тома, посвященного птицам.
Благодарности
Я начал исследовать то, что тогда было известно как C++0x (зарождающийся С++11), в 2009 году. Я опубликовал множество вопросов в группе новостей Usenet >comp.std.c++
и благодарен членам этого сообщества (в особенности Дэниелу Крюглеру (Daniel Krugler)) за их очень полезные сообщения. В последние годы с вопросами по С++11 и С++14 я обращался к Stack Overflow, и я многим обязан этому сообществу за его помощь в понимании тонкостей современного С++.
В 2010 году я подготовил материалы для учебного курса по С++0x (в конечном итоге опубликованные как Overview of the New С++, Artima Publishing, 2010). На эти материалы, как и на мои знания, большое влияние оказала техническая проверка, выполненная Стивеном Т. Лававеем (Stephan T. Lavavej), Бернгардом Мерклем (Bernhard Merkle), Стенли Фризеном (Stanley Friesen), Леором Зорманом (Leor Zolman), Хендриком Шобером (Hendrik Schober) и Энтони Вильямсом (Anthony Williams). Без их помощи я не смог бы довести мою книгу до конца. Кстати, ее название было предложено несколькими читателями в ответ на мое сообщение в блоге от 18 февраля 2014 года (“Помогите мне назвать мою книгу”), и Андрей Александреску (Andrei Alexandrescu) (автор книги Modern С++ Design[1], Addison-Wesley, 2001) был достаточно великодушен, чтобы не счесть это название незаконным вторжением на его территорию.
Я не могу указать источники всей информации в этой книге, но некоторые из них непосредственно повлияли на мою книгу. Применение в разделе 1.4 неопределенного шаблона для получения информации о типе от компилятора было предложено Стивеном T. Лававеем, а Мэтт П. Дзюбински (Matt P. Dziubinski) обратил мое внимание на Boost.TypeIndex. В разделе 2.1 пример >unsigned std::vector
взят из статьи Андрея Карпова (Andrey Karpov) от 28 февраля 2010 года “In what way can С++0x standard help you eliminate 64-bit errors