template函数

#include "stdafx.h"
#include   
#include   

using namespace std;  

template 
T sum(T b,T e, T init=T())
{
	char chars[N];
	cout<<"N: "< 
T sum(T b,T e, T init=T())
{
	cout<<"T sum(T b,T e, T init=T())"<(a[0],a[1],a[2])<(a[0],a[1],a[2])<(b[0],b[1],b[2])<(a[0],a[1],a[2])< 
     
输出结果:

N: 10
ab
N: 100
3
T sum(T b,T e, T init=T())
ab
int sum(int b,int e, int init=int())
3
T sum(T b,T e, T init=T())
ab
int sum(int b,int e, int init=int())
3


函数模板不能够带默认参数。

函数模板可以不用指明参数值。

这里还有一个有趣的地方就是init形参=T()。

无类型模板参数不能为变量。必须是一个编译时就已知的。

string str=string();
C++中,这种初始化的方法都差点忘了。

#include "stdafx.h"
#include   
#include   

using namespace std;  

template 
T sum(T b,T e, T init=T())
{
	char chars[N];
	cout<<"N: "< 
T sum(T b,T e, T init=T())
{
	cout<<"T sum(T b,T e, T init=T())"<(a[0],a[1],a[2])<(a[0],a[1],a[2])<(b[0],b[1],b[2])<(a[0],a[1],a[2])<

输出结果:

N: 10
ab
N: 100
3
T sum(T b,T e, T init=T())
ab
int sum(int b,int e, int init=int())
3
T sum(T b,T e, T init=T())
ab
int sum(int b,int e, int init=int())
3


函数模板不能够带默认参数。

函数模板可以不用指明参数值。

这里还有一个有趣的地方就是init形参=T()。

无类型模板参数不能为变量。必须是一个编译时就已知的。

string str=string();
C++中,这种初始化的方法都差点忘了。

你可能感兴趣的:(C语言复习要点,C/C++)