调用操作符和函数对象的疑惑
来源:互联网 发布:网络教育 考公务员 编辑:程序博客网 时间:2024/06/07 02:33
/*调用运算符和函数对象 部分内容摘自:C++ Primer 起初觉得这种写法很怪异,用结构体+重载“调用运算发”(就是圆括号),来实现函数的功能*/#include<iostream>using namespace std;/*封装了将int值转换为绝对值的操作*/struct absInt{int operator()(int val){return val<0 ? -val:val;}};/*取绝对值函数*/int AbsInt(int val){return val<0 ? -val:val;}int main(){int i = -42;int func_result = 0;absInt absObj;unsigned int ui = absObj(i);func_result = AbsInt(i);cout<<ui<<endl;;cout<<func_result<<endl;getchar();return 0;}/* 从上面的例子来说,我不觉得,这种重载函数调用操作符的操作会比直接使用函数好。 也许这种方法适合于某些特定场景,可是是什么场景呢?*/
http://zhidao.baidu.com/link?url=qSDqZlnk9YVhLHHG8MhWhYbLArWca4o8wS8pCRdgUbsDkC_UHP4Zm7KtaA7WHnXwInLsbSQco9IufACViyENgYaLONPcPS1V0GTXUpg1-ci
从上面的文章中得知,在向集合中添加数据时,运用它可以实现集合容器增加和查找内部数据的比较排序。另外,在Cpp Primer中,还介绍了另一种方法,使用比较函数。
我们可以知道,构造一个容器的比较器,通常有两种方法,一种是使用函数对象,另一种就是普通函数。
0 0
- 调用操作符和函数对象的疑惑
- 读书笔记--调用操作符和函数对象
- 调用操作符和函数对象
- 调用操作符和函数对象
- 关于函数对象和调用操作符
- 调用操作符和函数对象
- functools---可调用对象的高阶函数和操作
- C++ 重载调用操作符和函数对象
- Javascript中函数调用的疑惑积累
- 第十四章——调用操作符重载和函数对象的使用
- C++ 函数调用操作符 () 、 函数对象
- C++面向对象操作符重载:调用操作符和函数对象
- 调用操作符的重载与函数对象
- 调用操作符的重载与函数对象
- 调用操作符的重载与函数对象
- 关于delphi 的函数调用和参数传递方式深入研究之疑惑
- C++ Primer 学习笔记_62_满载操作符与转换 -调用操作符和函数对象
- 对象赋值的疑惑
- springMVC拦截器
- python的pip和virtualenv使用心得
- 顺序表的实现
- python pip通过本地目录安装相关程序包
- 程序员技术练级攻略(皓哥)
- 调用操作符和函数对象的疑惑
- EasyUI之tab标签显示页面内容
- poj 3061 Subsequence
- springmvc使用@ResponseBody返回json乱码解决方法
- J2EE的13种核心技术规范
- 日语学习之沪江N3基础 20150620 -3
- 输入一行字符串,输出改行的单词
- measure getMeasuredWidth/getWidth getRawX/getX的作用和区别
- 2.Android基础知识