117 C++ 萃取 traits 技术概念,范例

类型萃取概述 type traits

属于泛型编程方便的技术,在stl源码中,类型萃取技术用的很多。

萃取:提取一些信息出来。

C++11  标准库里 提供了很多类型萃取的接口,这些接口起始就是类模版;

这些萃取的接口在:

Metaprogramming library (since C++11) - cppreference.com

类型萃取范例

//通过萃取接口中的value值为true  ,false 就可以萃取出很多有用信息。

template <typename T>
void printTraitsInfo(const T &t) {
	cout << "要萃取的类型名字:" << typeid(T).name() << endl;
	cout << "is_void = " << is_void<T>::value << endl;//类型是否 是 void
	cout << "is_class = " << is_class<T>::value << endl;//类型是否 是 一个class
	cout << "is_object = " << is_object<T>::value << endl;//类型是否 是 一个对象类型
	cout << "is_pod = " << is_pod<T>::value
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值