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

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.

主站蜘蛛池模板: 益阳市| 区。| 普宁市| 汉沽区| 陇南市| 天水市| 清丰县| 连南| 富裕县| 繁峙县| 阜南县| 易门县| 元谋县| 都匀市| 资阳市| 江北区| 皋兰县| 民勤县| 布尔津县| 高邑县| 珠海市| 孟津县| 武清区| 曲松县| 阿城市| 科技| 阳朔县| 巴林左旗| 久治县| 奇台县| 武汉市| 徐州市| 鹤庆县| 古丈县| 宣威市| 梁平县| 甘泉县| 巴楚县| 永新县| 永泰县| 阿克苏市|