泛型与非泛型组合

来源:互联网 发布:pe windows启动修复 编辑:程序博客网 时间:2024/06/16 13:11
#include<iostream>using namespace std;template<class T, int MAXSIZE>class Array{public:    Array()    {        head = new T[MAXSIZE];        cout << "MAXSIZE:" << MAXSIZE << endl;    }    ~Array()    {        delete[] head;    }private:    T *head;};void array_init(int *array, int len){    for (int i = 0; i < len; i++)    {        array[i] = 0;    }}template<class T>void array_init(T *array, int len){    for (int i = 0; i < len; i++)    {        array[i] = 0;    }}template<class T, int len>void array_init(T(&array)[len])//surprise!{    cout << "len:" << len << endl;    for (int i = 0; i < len; i++)    {        array[i] = 0;    }}void main(){    Array<int, 100> arr;    int array[100];    array_init(array, 100);    array_init(array);}