1概述C++11的新特性--可变模版参数(variadictemplates)是C++11新增的最强大的特性之一,它对参数进行了高度泛化,它能表示0到任意个数、任意类型的参数。相比C++98/03,类模版和函数模版中只能含固定数量的模版参数,可变模版参数无疑是一个巨大的改进。然而由于可变模版参数比较...
分类:
编程语言 时间:
2015-03-10 15:27:23
阅读次数:
251
模版(template)设计的初衷,是设计一种自动实例化机制,不需要使用者参与,编译器可根据使用者提供的模版参数再套用类的定义来实例化。所谓实例化,除了包含对于程序变量的实例化,即开辟空间并设置某些变量的初值(构造函数)以及指针(如vptr)以及其他支持(virtual base class o.....
分类:
编程语言 时间:
2014-12-14 21:16:46
阅读次数:
200
在《C++ Primer》第五版中,关于模版实参推断,讲述了如下内容1.类型转换与模版类型参数2.函数模版的显式实参3.尾置返回类型4.类型转换5.函数指针和实参推断6.模版参数推断和引用书中留给大家一些习题,要求大家给出模版参数的推断类型,参见16.2.5节练习。问题是如何验证我们的答案是否正确,...
分类:
其他好文 时间:
2014-11-21 20:17:00
阅读次数:
211
在《C++ Primer》第五版中,关于模版实参推断,讲述了如下内容
1.类型转换与模版类型参数
2.函数模版的显式实参
3.尾置返回类型
4.类型转换
5.函数指针和实参推断
6.模版参数推断和引用
书中留给大家一些习题,要求大家给出模版参数的推断类型,参见16.2.5节练习。问题是如何验证我们的答案是否正确,我在这里给出一段代码,抛砖引玉!
template voi...
分类:
编程语言 时间:
2014-11-21 18:42:59
阅读次数:
363
**
* 用excel模版模版导出excel
*
* @param templeteSrc
* 模版路径(含名称)
* @param params
* 模版参数
* @pa...
分类:
其他好文 时间:
2014-08-18 13:04:52
阅读次数:
372
有时,当把c风格的不同字符串去实例化函数模版的同一个模版参数时,在实参演绎的过程中经常会发生
意想不到的事情,那就是编译失败,并报错类型不匹配。
正如下面的例子一样:
#include
using namespace std;
/*
*匹配测试
*/
template
int ref_fun(T & t1,T & t2)
{
return strlen(t1) - strlen(t2);...
分类:
其他好文 时间:
2014-07-13 17:04:42
阅读次数:
208