![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C++ Templates
文章平均质量分 73
C++ Templates、STL与元编程
大胡子的艾娃
业精于勤荒于嬉,行成于思毁于随。
展开
-
C++标准模板库type_traits源码剖析
1、type_traits是C++11提供的模板元基础库。2、type_traits可实现在编译期计算。包括添加修饰、萃取、判断查询、类型推导等等功能。3、type_traits提供了编译期的true和false。原创 2023-02-10 21:32:25 · 1181 阅读 · 0 评论 -
元组tuple
#include <tuple>template<class _Ty> struct _Tuple_val { constexpr _Tuple_val() : _Val() { // default construct } _Ty _Val; }; template<class... _Types>class tuple;template<>class tuple<>{}; // empty tupletem原创 2021-07-02 21:47:02 · 143 阅读 · 0 评论 -
initialize(initialize_list<T>)
initialize(initialize_list) //视频:4-6#include <initializer_list> //头文件templateclass initializer_list{public:_NODISCARD constexpr const _Elem * begin() const noexcept;_NODISCARD constexpr const _Elem * end() const noexcept;_NODISCARD constexp原创 2021-07-02 00:54:01 · 265 阅读 · 0 评论 -
C++11新特性:auto和decltype
@著作权归作者所有:来自CSDN博客作者大胡子的艾娃的原创作品,如需转载,请注明出处https://blog.csdn.net/qq_43148810,否则将追究法律责任。如有错误的地方欢迎指正,谢谢!一、auto作用编程时候常常需要把表达式的值赋给变量,需要在声明变量的时候清楚的知道变量是什么类型。然而做到这一点并非那么容易(特别是模板中),有时候根本做不到。为了解决这个问题,C++11新...原创 2020-02-12 11:28:26 · 575 阅读 · 0 评论 -
c++11 Variadic Templates(...)(可变参数列表)
Variadic Templates(…) //视频:2,15-17示例:void print(){} //结束template<typename T,typename... Types>void print(const T& firstArg,const Types&... args){//sizeof...(args);//求这包东西的大小cout<<firstArg<<endl;print(args..);}//调用过程//p转载 2021-07-02 20:25:26 · 410 阅读 · 0 评论 -
Traits和Policy Classes
1.Traits中名称说明:1)一定由有呼叫端给值(给予引数)者,称为【主参数】2)可由主参数推导者,成为【附件参数】2.Traits方法1)Fixed Traits:固定式萃取机2)Value Traits:值式式萃取机3)Parameterized Traits:参数式式萃取机3.Policy(策略)4.STL中的Iterators迭代器去问容器各种属性,例如:iterator_category、different_type5.Type Functions:接受一些types作为引数,原创 2022-05-08 14:45:06 · 289 阅读 · 0 评论 -
Templates基础
一、Function Template (函数模板)1.编译器推导模板参数、显示实例化模板参数(也可半显示半推导,从到后) P142.重载函数模板二、Class Template(类型模板)1.特化2.偏特化 (某个宣告式与多个偏特化产生同等的匹配程度,则歧义)3.预设模板参数三、Nontype Template Parameters(非类型模板参数)1.非类型类型模板参数2.非类型函数模板参数//不能把浮点数、class-type物件、//内部连接物件(string、字符常量)作为非原创 2022-05-08 14:21:23 · 1520 阅读 · 0 评论 -
Templates的静态多态性
动态(绑定、执行期)多态性与模板的静态(非绑定、编译期)多态性 P237 1重点泛型编程实作-STL,经典代表iterators原创 2022-05-07 01:20:38 · 607 阅读 · 0 评论 -
基于多线程并发-STL之thread构造函数浅析
@著作权归作者所有:来自CSDN博客作者大胡子的艾娃的原创作品,如需转载,请注明出处https://blog.csdn.net/qq_43148810,否则将追究法律责任。如有错误的地方欢迎指正,谢谢!一、标准库Thread内容(函数内部实现内容已摘去)class thread { // class for observing and managing threadspublic: class id; typedef void *native_handle_type; thread() no原创 2021-02-09 23:14:05 · 1592 阅读 · 0 评论 -
C++函数重载、重写与重定义
一、重写二、重定义三、重载类型转换模板参数重载原创 2021-06-30 23:49:01 · 1036 阅读 · 5 评论 -
C++模板编程之类型萃取 惊鸿一瞥
http://11142019.bog.51cto.com/11132019/1846832原创 2021-08-17 23:07:26 · 461 阅读 · 0 评论