64,637
社区成员
发帖
与我相关
我的任务
分享
template <class TYPE>
class CTest
{
public:
CTest(...)
{
// 这里向TYPE(...)中传送CTest(...)中的参数
// m_ptr = new TYPE(...);
}
private:
TYPE *m_ptr;
};
问下,这个可以实现么?例如CTest<int> a(10)
在CTest构造函数中就调用m_ptr = new TYPE(10);
#include<utility>
template <typename T>
struct CTest
{
template <typename ... Ts>
CTest (Ts&& ... ts)
{
new T(std::forward<Ts>(ts)...);
}
};
搜个可变长参数的例子看看就懂了。
很简单啊,找个例子改改就行了 http://www.cnblogs.com/phinecos/archive/2007/08/24/868524.html