1、类型别名 类型别名是某种类型的同义词。 注意:遇到使用了类型别名的声明语句时,人们往往会错误地尝试把类型别名替换成它本来的样子去理解,这种理解方法是错误的;要将类型别名看成是一个基本数据类型去理解。 2、auto类型说明符 使用auto类型说明符能让编译器替我们去分析表达式所属的类型。编译器推断 ...
分类:
其他好文 时间:
2018-12-02 16:17:16
阅读次数:
172
一. auto简介编程时候常常需要把表达式的值付给变量,需要在声明变量的时候清楚的知道变量是什么类型。然而做到这一点并非那么容易(特别是模板中),有时候根本做不到。为了解决这个问题,C++11新标准就引入了auto类型说明符,用它就能让编译器替我们去分析表达式所属的类型。和原来那些只对应某种特定的类 ...
分类:
编程语言 时间:
2018-11-07 16:37:17
阅读次数:
189
智能指针 unique_ptr 使用 和shared_ptr不同,可以有多个shared_ptr指向同一个内存,只能有1个unique_ptr指向某个内存。因此unique_ptr不支持普通的拷贝和赋值。 一,先来个表格,唠唠unique_ptr | 操作 | 功能描述 | | | | | uniq ...
分类:
编程语言 时间:
2018-09-28 10:58:51
阅读次数:
387
标准库 set 自定义关键字类型与比较函数 问题:哪些类型可以作为标准库set的关键字类型呢??? 答案: 1,任意类型,但是需要额外提供能够比较这种类型的比较函数。 2,这种类型实现了 类型,注意是类型,不是变量 方式1:使用decltype,注意后面必须有 方式2:直接使用函数指针 代码块索引: ...
分类:
编程语言 时间:
2018-09-22 14:42:56
阅读次数:
239
转自:https://www.cnblogs.com/QG-whz/p/4952980.html decltype简介 我们之前使用的typeid运算符来查询一个变量的类型,这种类型查询在运行时进行。RTTI机制为每一个类型产生一个type_info类型的数据,而typeid查询返回的变量相应typ ...
分类:
编程语言 时间:
2018-09-20 01:14:50
阅读次数:
255
1.auto:自动类型推导 编译时对变量进行类型推导,不会对程序的运行效率造成影响; 不会影响编译速度,因为编译时也要右侧推导,然后判断与左侧是否匹配; 通过初始化表达式进行类型推导。 2. decltype:从一个变量或表达式中得到类型 3. nullptr:空指针常量 解决C++中NULL的二义 ...
分类:
编程语言 时间:
2018-09-17 19:44:33
阅读次数:
245
Lambda 表达式 auto f1 = [](int x, int y) { return x + y; };cout << f1(2, 3) << endl; int n = [] (int x, int y) { return x + y; }(5, 4); int var;decltype( ...
分类:
其他好文 时间:
2018-07-31 01:28:22
阅读次数:
269
1、与auto不同,decltype类型不需要使用表达式的类型来作为auto类型变量的类型,decltype类型选择并返回其操作数的类型来作为该类型定义的变量的类型,并不是要用表达式去初始化其定义的变量。 2、引用与一个对象绑定,引用就是这个对象的同义词,可以作为这个对象使用,但是decltype是 ...
分类:
其他好文 时间:
2018-07-26 15:05:42
阅读次数:
128
folly/Poly.h Poly is a class template that makes it relatively easy to define a type-erasing polymorphic object wrapper. Type-erasure std::function is ...
分类:
其他好文 时间:
2018-07-24 14:04:10
阅读次数:
147
什么是C++11 C++11是曾经被叫做C++0x,是对目前C++语言的扩展和修正,C++11不仅包含核心语言的新机能,而且扩展了C++的标准程序库 (STL),并入了大部分的C++ Technical Report 1(TR1) 程序库(数学的特殊函数除外)。 C++11包括大量的新特性:包括la ...
分类:
编程语言 时间:
2018-07-02 00:11:24
阅读次数:
216