5,530
社区成员
发帖
与我相关
我的任务
分享
class Doc
{
private:
A *m_a;
public:
void CreateA()
{
m_a = new A;
}
A* GetA()
{
return m_a;
}
}
class A
{
public:
A(){};
};
class Doc
{
private:
void *m_a;
public:
void CreateVoid()
{
m_a = new void;
}
void* GetVoid()
{
return m_a;
}
};
int main(int argc, char* argv[])
{
A * a=NULL;
Doc doc;
doc.CreateVoid();
a = doc.GetVoid();
if ( a )
{
printf("success!");
}
else
{
printf("failed!");
}
return 0;
}
class Doc
{
public:
template<class T>
T* GetA()
{
return new T;
}
}
A* a = Doc::GetA<A>();
template<class T>
class Doc
{
private:
T *m_a;
public:
void CreateA()
{
m_a = new T(); // T的默认构造
}
T* GetA()
{
return m_a;
}
}