模版指针使用问题//求解释m_t = new 一个char数组呢。。。。
template <typename T>
class base{
public:
T test(T d);
T m_t;
};
template <typename T>
T base<T>::test(T d)
{
m_t = new 一个char数组呢。。。。
}
int _tmain(int argc, _TCHAR* argv[])
{
base<char*> obj;
char ca[10] = "abc";
cout << obj.test(ca) << end;
return 0;
}
#include <cstring>
#include <iostream>
template <typename T>
class base;
template <typename T>
class base<T*>
{
public:
base(): m_t(0)
{
}
T* test(T const* d)
{
m_t = new char[strlen(d) + 1];
strcpy(m_t, d);
return m_t;
}
~base()
{
delete [] m_t;
}
private:
T* m_t;
};
int main()
{
base<char*> obj;
std::cout << obj.test("abc") << std::endl;
return 0;
}