C++11学习
文章平均质量分 76
xiaojun11-
勤能补拙,奋发ing
展开
-
c++11 之emplace_back 与 push_back的区别
c++开发中我们会经常用到插入操作对stl的各种容器进行操作,比如vector,map,set等。在引入右值引用,转移构造函数,转移复制运算符之前,通常使用push_back()向容器中加入一个右值元素(临时对象)时,首先会调用构造函数构造这个临时对象,然后需要调用拷贝构造函数将这个临时对象放入容器中。原来的临时变量释放。这样造成的问题就是临时变量申请资源的浪费。 引入了右值引用,转移构造函数后,push_back()右值时就会调用构造函数和转移构造函数,如果可以在插入的时候直接构造,就只需要构造一次即可.转载 2021-12-24 10:49:43 · 493 阅读 · 0 评论 -
C++11之std::function和std::bind
转载自:https://www.cnblogs.com/jiayayao/p/6139201.html 多谢版主std::function是可调用对象的包装器,它最重要的功能是实现延时调用:#include "stdafx.h" #include<iostream>// std::cout #include<functional>// std::function v...转载 2018-07-10 17:36:28 · 217 阅读 · 0 评论 -
C++ std::function的用法
类模版std::function是一种通用、多态的函数封装。std::function的实例可以对任何可以调用的目标实体进行存储、复制、和调用操作,这些目标实体包括普通函数、Lambda表达式、函数指针、以及其它函数对象等。std::function对象是对C++中现有的可调用实体的一种类型安全的包裹(我们知道像函数指针这类可调用实体,是类型不安全的)。 通常std::function是一个函数...转载 2018-11-20 15:15:49 · 867 阅读 · 1 评论 -
C++11之std::function和std::bind
转载自: https://www.cnblogs.com/jiayayao/p/6139201.html std::function是可调用对象的包装器,它最重要的功能是实现延时调用: #include "stdafx.h" #include<iostream>// std::cout #include<functional>// std::function v...转载 2018-11-21 10:01:20 · 161 阅读 · 0 评论