c++14 · iso/iec 14882:2014

Заплатка, доводящая C++11 до умаA patch that polishes C++11

Никакой новой архитектуры — только устранение шероховатостей, оставшихся после C++11: generic lambdas, вывод типа возврата функций, variable templates и make_unique, которого не хватало с самого начала. 5 фич, каждая — отдельная страница.No new architecture — just smoothing over the rough edges left by C++11: generic lambdas, function return type deduction, variable templates, and the make_unique that had been missing from the start. 5 features, each its own page.

Лямбды и вывод типов — доводка C++11Lambdas and type deduction — polishing C++11

то, чего не хватило в первом заходеwhat was missing the first time around

auto и decltype из C++11 не покрывали параметры лямбд и возвращаемый тип функций — C++14 закрывает оба пробела.C++11's auto and decltype didn't cover lambda parameters or function return types — C++14 closes both gaps.

Шаблоны и библиотекаTemplates and library

variable templates + make_unique

порядок чтения и связи с C++11reading order and links to C++11

generic lambdas и decltype(auto) стоит читать после cpp11/lambda.html и cpp11/decltype.html — это прямое продолжение тех же механизмов, не новая концепция с нуля.generic lambdas and decltype(auto) are worth reading after cpp11/lambda.html and cpp11/decltype.html — they're a direct continuation of the same mechanisms, not a new concept from scratch.

make_unique закрывает грабли, явно описанные в cpp11/unique-ptr.html («new T(...) напрямую в аргументе — риск утечки при исключении») — до C++14 это приходилось писать руками через variadic templates, что и показано там же как обходной путь.make_unique closes a gotcha explicitly described in cpp11/unique-ptr.html ("new T(...) directly in an argument — a leak risk under an exception") — before C++14 this had to be hand-written via variadic templates, which is shown there as the workaround.