std::ref 有什么用
2016-05-01 12:15
246 查看
http://www.boost.org/doc/libs/1_48_0/doc/html/ref.html
void func(int& val)
{
val = 10;
}
int main()
{
int val = 0;
std::bind(func, val)();
std::cout << val << std::endl;
std::bind(func, std::ref(val))();
std::cout << val << std::endl;
}
输出:
0
10
std::bind构造的对象内部保存对象拷贝,引用传参给被绑定的函数时传的是bind构造的对象内部保存的参数的引用,而非被绑定参数的引用,std::ref就是为了解决这一类问题
void func(int& val)
{
val = 10;
}
int main()
{
int val = 0;
std::bind(func, val)();
std::cout << val << std::endl;
std::bind(func, std::ref(val))();
std::cout << val << std::endl;
}
输出:
0
10
std::bind构造的对象内部保存对象拷贝,引用传参给被绑定的函数时传的是bind构造的对象内部保存的参数的引用,而非被绑定参数的引用,std::ref就是为了解决这一类问题
相关文章推荐
- PowerShell调用WMI
- redis安装
- 20145120 《Java程序设计》第9周学习总结
- Android Studio 2.+使用分享——关于未签名Apk第一次运行黑屏or白屏
- Python lambda表达式
- 2016年4月14日--4月30日(12小时,剩3009小时)
- nginx安装配置
- 一起talk C栗子吧(第一百四十一回:C语言实例--文件操作:基于文件指针一)
- 地理定位跟踪
- 常见的命令行操作
- C++ ofstream和ifstream详细用法
- Java-Write Once,Run Anywhere
- Bootstrap进度条组件知识详解
- Eclipse 安装Properties Editor插件
- 线性代数(笔记三) MIT公开课(来源网易云课堂)
- Kafka开发实战(三)-Kafka API使用
- 归并排序
- java操纵bat文件
- HDU 5677 ztr loves substring (dp)
- 一个电商项目的Web服务化改造7:Dubbo服务的调用,4个项目