中国开发网: 论坛: 程序员情感CBD: 贴子 33462
Yxd
奇技淫巧一把。。。。动态多维数组分配。。。
#include "stdafx.h"
#include <iostream>

using namespace std;

template < class T, unsigned int dimensions > struct Array;

template < class T >
struct Array< T, 1 >
{
typedef T* Result;
Result operator()( unsigned int nSize )
{
return new T[nSize];
}
};

template < class T, unsigned int dimensions >
struct Array< T, dimensions >
{
private:
typedef typename Array< T, dimensions - 1 >::Result Temp;
public:
typedef Temp* Result;
Result operator()( unsigned int nSize )
{
return new Temp[nSize];
}
};

void Test( int argc, _TCHAR* argv[] )
{
}

int _tmain(int argc, _TCHAR* argv[])
{
_TCHAR** pTest = Array< _TCHAR, 2 >()( 4 );
for ( int n = 0; n < 4; ++ n )
{
pTest[n] = Array< _TCHAR, 1 >()( 32 );
_stprintf( pTest[n], _T("%d"), n );
}
for ( int n = 0; n < 4; ++ n )
{
cout << pTest[n] << endl;
}
return 0;
}

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录