C++处理多种数据类型

来源:互联网 发布:linux怎么用makefile 编辑:程序博客网 时间:2024/06/10 20:57

1.在定义时我们可以这样:void* pointer;

然后根据所需类型为其分配内存:pointer=new Type[Size]

Type为预分配的数据类型,Size为预分配的内存空间.

可把此句加入到条件语句中,就可将不同的数据类型存入到*pointer中。

2.处理多种数据结构时,可以使用函数的重载,但需要对每一种数据的处理都定义函数,这样会显得代码冗长。利用函数模版就能很好的解决这个问题,只用定义一个函数模版就行。

当我们要处理的是:** pointer时就不能用上述方法。
使用函数模版:
template <typename T>
void fun(T type)
{
 T **abyRaster=NULL,**resultRaster=NULL; 
 .......
}

调用时:
main()
{
 int type1;
 float type2;
 if(要处理int型)
  fun(type1);
 if(要处理float 型)
  fun(type2);
 ......
}

 

原创粉丝点击