C++模板元编程有什么作用

这篇文章主要介绍“C++模板元编程有什么作用”,在日常操作中,相信很多人在C++模板元编程有什么作用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C++模板元编程有什么作用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

创新互联建站从2013年开始,先为莫力达等服务建站,莫力达等地企业,进行企业商务咨询服务。为莫力达企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

T.121:模板元编程主要用于模仿概念

Reason(原因)

Until concepts become generally available, we need to emulate them using TMP. Use cases that require concepts (e.g. overloading based on concepts) are among the most common (and simple) uses of TMP.

在概念普遍可用之前,我们需要使用TMP模仿它们。需要概念的使用场景(例如基于概念的重载)就在更加普通(和简单的)TMP的用法中。

Example(示例)

template
   /*requires*/ enable_if, void>
advance(Iter p, int n) { p += n; }

template
   /*requires*/ enable_if, void>
advance(Iter p, int n) { assert(n >= 0); while (n--) ++p;}
Note(注意)

Such code is much simpler using concepts:

上述代码如果使用概念会简单很多:

void advance(RandomAccessIterator p, int n) { p += n; }

void advance(ForwardIterator p, int n) { assert(n >= 0); while (n--) ++p;}

到此,关于“C++模板元编程有什么作用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


分享名称:C++模板元编程有什么作用
标题URL:http://myzitong.com/article/jjghdh.html