zmienny szablon określonego typu
Chcę szablon zmiennoprzecinkowy, który po prostu akceptuje liczby całkowite bez znaku. Jednak nie udało mi się wykonać następujących czynności.
struct Array
{
template <typename... Sizes> // this works
// template <unsigned... Sizes> -- this does not work (GCC 4.7.2)
Array(Sizes... sizes)
{
// This causes narrowing conversion warning if signed int is supplied.
unsigned args[] = { sizes... };
// ...snipped...
}
};
int main()
{
Array arr(1, 1);
}
Każda pomoc doceniana.
EDYCJA: W przypadku, gdy zastanawiasz się, próbuję użyć szablonu zmiennego do replikacji następujących.
struct Array
{
Array(unsigned size1) { ... }
Array(unsigned size1, unsigned size2) { ... }
Array(unsigned size1, unsigned size2, unsigned size3) { ... }
// ...
Array(unsigned size1, unsigned size2, ..., unsigned sizeN) { ... }
};