当前位置: 首页 > news >正文

大连网站制作.net/附近电脑培训班零基础

大连网站制作.net,附近电脑培训班零基础,广东一站式网站建设费用,网站备案符号功能 类型萃取,在STL中用到的比较多,用于判断一个变量是否为POD类型. 简述来说可以用来判断出某个变量是内置类型还是自定义类型. 通过类型萃取,萃取到变量类型,对不同变量进行不同处理,可以提升程序效率. 应用场景 比如我们实现顺序表,在对顺序表进行扩容时,就靠重新开辟内存、…

功能

  类型萃取,在STL中用到的比较多,用于判断一个变量是否为POD类型.

  简述来说可以用来判断出某个变量是内置类型还是自定义类型.

  通过类型萃取,萃取到变量类型,对不同变量进行不同处理,可以提升程序效率.

应用场景

  比如我们实现顺序表,在对顺序表进行扩容时,就靠重新开辟内存、拷贝对象.

  拷贝对象时,就有两种情况:一种是类型,比如int char...;还有一种是自定义类型,Data类、String类.

  对于内置类型,我们可以通过memset,来进行赋值.(扩展,浅拷贝相关的类也可以通过memset赋值)

  而对于自定义类型,大多数深拷贝的对象来说,我们必须通过调用赋值语句来赋值.

  因此,我们通常在拷贝对象时,为了不出现错误,都用赋值语句来赋值.

  而我们如果有一种方法/机制可以判断POD类型或者非POD类型.

  对于POD类型用memset函数,对于非POD用赋值,这样就能提高程序的效率

实现

  类型萃取,在技术层面,就是利用了模板的特化.

  简单类型萃取的实现代码:

template<typename T>
struct TypeTraits{static bool IsPODType(){return false;}
};
//特化int
template<>
struct TypeTraits<int>{static bool IsPODType(){return true;}
};
//特化unsigned int
template<>
struct TypeTraits<unsigned int>{static bool IsPODType(){return true;}
};template<>
struct TypeTraits<char>{static bool IsPODType(){return true;}
};template<>
struct TypeTraits<unsigned char>{static bool IsPODType(){return true;}
};template<>
struct TypeTraits<short>{static bool IsPODType(){return true;}
};template<>
struct TypeTraits<unsigned short>{static bool IsPODType(){return true;}
};
//.....更多类型,继续特化就好

   测试代码:

#include<iostream>
template<typename T>
void CheckTypeTraits(T &v){std::cout<<v<<"是POD类型?"<<TypeTraits<T>::IsPODType()<<std::endl;
}int main(){int a = 1;char b = '2';short c = 3;float d = 4.4;	//没有特化处理,因此返回0CheckTypeTraits(a);CheckTypeTraits(b);CheckTypeTraits(c);CheckTypeTraits(d);	return 0;
}

 

转载于:https://www.cnblogs.com/qq329914874/p/6729481.html

http://www.jmfq.cn/news/5110831.html

相关文章:

  • 在哪可以建一个网站/快速提升网站关键词排名
  • 做公众号可以看的网站/新开传奇网站
  • html 图片展示网站/什么软件可以发布广告信息
  • 做网站系统用什么语言/网络营销的方式都有哪些
  • 吴江盛泽建设局网站/快速排名软件哪个好
  • 重庆南岸网站建设/宁波网络营销公司有哪些
  • 编写网页的软件叫什么/aso优化违法吗
  • 广州企业网站营销电话/76人vs猛龙
  • 做日用品的网站好/软文是什么意思?
  • 用asp做网站/什么网站可以免费发广告
  • 查询优惠券的网站如何做/青岛网站建设方案优化
  • 做网站的好公司/引擎搜索优化
  • 免费模板网站建设/西安百度搜索排名
  • 四川省住房和城乡建设厅官网查证/厦门seo搜索引擎优化
  • 衡水市网站建设/杭州seo网站排名优化
  • 津南区提供网站建设协议/营销推广公司
  • 重新建设网站/安徽做网站公司哪家好
  • 核工业华南建设工程集团公司网站/seo网站优化服务合同
  • 淳安网站建设/电话销售怎么找客户渠道
  • 西安有哪些做网站的公司好/佛山全网营销推广
  • 网站优化排名的方法/上海网络推广团队
  • 个人如果做网站赚钱吗/百度导航下载2022最新版
  • 网站怎么做劫持/南京高端品牌网站建设
  • 注册网站需要多少/google关键词搜索工具
  • 深圳建网站兴田德润可信/网络营销论文5000字
  • 免费自己制作网站教程/百度网盘在线登录
  • 桥东企业做网站/精准引流推广公司
  • 成品网站分享一下/上海百度推广客服电话多少
  • 网站建设要多少钱/百度竞价排名规则
  • vs做的网站源代码/宁波网站推广优化