官术网_书友最值得收藏!

3 Exploring Functions

Functions are a fundamental concept in programming; regardless of the topic we discuss, we end up writing functions. Trying to cover functions in a single chapter is not only hard but also not very rational. Being a fundamental element of the language, functions are encountered in every recipe of this book. This chapter, however, covers modern language features related to functions and callable objects, with a focus on lambda expressions, concepts from functional languages such as higher-order functions, and type-safe functions with a variable number of arguments.

The recipes included in this chapter are as follows:

  • Defaulted and deleted functions
  • Using lambdas with standard algorithms
  • Using generic and template lambdas
  • Writing a recursive lambda
  • Writing a function template with a variable number of arguments
  • Using fold expressions to simplify variadic function templates
  • Implementing the higher-order functions map and fold
  • Composing functions into a higher-order function
  • Uniformly invoking anything callable

We will start this chapter by learning about a feature that makes it easier for us to provide special class member functions or prevent any function (member or non-member) from being invoked.

主站蜘蛛池模板: 桂东县| 夏津县| 东丽区| 分宜县| 特克斯县| 荔波县| 松江区| 饶阳县| 施甸县| 卢湾区| 汕尾市| 静宁县| 莱西市| 桐梓县| 平凉市| 包头市| 宝兴县| 黔西| 长丰县| 信宜市| 抚宁县| 万载县| 韶关市| 南部县| 华坪县| 治多县| 襄汾县| 阜新| 时尚| 永康市| 阜宁县| 新巴尔虎左旗| 峡江县| 赣州市| 高邮市| 云林县| 南京市| 巴楚县| 永川市| 厦门市| 凤城市|