🔧
C++ — Функции
Передача аргументов, перегрузка, default, inline, лямбды
30 вопросов · 30 показано
EasyЧем передача по значению отличается от передачи по ссылке?аргументыEasyЧто такое перегрузка функций (overloading)?перегрузкаEasyЧто такое default arguments и какие правила?defaultMediumЧем inline-функция отличается от обычной?inlineMediumЧто такое constexpr-функция?constexprMediumЧто такое noexcept-функция?исключенияMediumЧем variadic функции (vararg) отличаются от variadic templates?variadicHardЧто такое fold expressions?variadicMediumЧем function pointer отличается от лямбды?callbackMediumЧто такое generic lambda?lambdaMediumЧем mutable lambda отличается от обычной?lambdaMediumЧто такое decltype и для чего используется?decltypeMediumЧем return-by-value эффективен благодаря RVO?RVOоптимизацияMediumЧто такое trailing return type и зачем он нужен?синтаксисHardЧто такое coroutines (co_await/co_yield/co_return)?coroutinesMediumЧем pure virtual функция отличается от обычной virtual?ООПvirtualEasyЧем override отличается от final?ООПHardЧто такое hidden friends идиома?ООПbest practicesHardЧем ADL (argument-dependent lookup) полезен?lookupHardЧто такое SFINAE в сигнатурах функций?SFINAEшаблоныMediumЧто такое std::function и когда использовать?callbackMediumЧем bind() отличается от лямбды?bindHardЧто такое function try block?исключенияHardЧто такое указатель на функцию-член?pointer to memberEasyЧем namespace отличается от class?namespaceMediumЧто такое anonymous namespace и зачем?namespaceHardЧто такое extern template?шаблоныMediumЧем return-by-reference опасен?lifetimeHardЧто такое NRVO и когда оно не работает?NRVOоптимизацияHardЧем consteval функция отличается от constexpr?consteval