- 算术运算类函数对象
函数对象 应用实例 结果 plus<T>() plus<T>()(a,b); a+b minus<T>() minus<T>()(a,b); a-b multiplies<T>() multiplies<T>()(a,b); a*b divides<T>() divides<T>()(a,b); a/b modulus<T>() modulus<T>()(a,b); a%b negate<T>() negate<T>()(a,b); -a - 关系运算函数对象
函数对象 应用示例 结果 greater<T>() greater<T>()(a,b); a>b greater_equal<T>() greater_equal<T>()(a,b); a>=b less<T>() less<T>()(a.b); a<b less_equal<T>() less_equal<T>()(a.b); a<=b equal_to<T>() equal_to<T>()(a,b); a==b not_equal_to<T>() not_equal_to()(a,b); a!=b - 函数的默认参数:函数参数的默认值只能在函数原型中提供,而不能同时提供与函数定义中。在为函数参数设置默认值时,必须严格的从右向左给形参提供默认值,提供的实参严格的从左向右逐渐匹配形参。
- 定义lambda函数,总是以方括号“[]”开始。【1】(x):以值传递的方式捕捉变量x。【2】[=]:以值传递的方式捕捉父作用域中的所有变量。【3】[&x]:以引用传递的方式捕捉变量x。【4】[&]:以引用传递的方式捕捉父作用域中的所有变量。【5】[=,&x,&y]:以引用传递的方式捕捉变量x和y,以值传递的方式捕捉其余变量。【6】[&,x]:以值传递的方式捕捉变量x,以引用传递的方式捕捉其余变量。
c++(面向对象)[算术运算类函数对象、关系运算函数对象]
最新推荐文章于 2024-05-09 13:07:10 发布