میشه ولی نه به اون شکل که نوشتی
در ضمن چون ورودی int هست از nullptr نمیتونی استفاده کنی .
#include <iostream>
using namespace std;
template <typename T,typename ...Types>
class TVector
{
public:
TVector():
i(0){}
T mArrays[sizeof...(Types)+1];
void Push(const T& val,const Types& ... args)
{
cout<<val<<"\n";
mArrays[i++]=val;
Push(args ... );
}
private:
void Push(){i=0;/* reset the counter */}
template <typename T2,typename ...Types2>
void Push (const T2& val,const Types2& ... args)
{
cout<<val<<"\n";
mArrays[i++]=val;
Push(args ... );
}
int i;//counter
};
int main ()
{
TVector<int, int, int> gArray3Line;
gArray3Line.Push(12, 11,34);//ok
// gArray3Line.Push(12, 11);//error
// gArray3Line.Push(12, 11,34,34);//error
}