Şu anda, değişken şablon desteği ile yapabileceğim bazı şeylerin etrafından dolaşmaya çalışıyorum. Bu savların tamsayı olacak, ama belli ki başka bir şey sağlarsanız başarısız olacağını önceden varsaymak çünküC++ Bilinen Türlü Variadic İşlev Şablonları
template <typename ... Args>
void foo(Args ... a)
{
int len = sizeof...(tail);
int vals[] = {a...};
/* Rest of function */
}
/* Elsewhere */
foo(1, 2, 3, 4);
Bu kod çalışır - ı böyle bir işlevi var diyelim. Ben parametre paketleri önceden belli türünü içeren biliyorum, ben gibi bir şey çiftleşmiş olmadan ve olabilir bir yol var mı -
void foo(int ... a)
bunu yaparken denedi, ama derleyici bir hata verdi Bir boşluk alanı olan foo hakkında. Biliyorum ki, paket içerisindeki parametrelere özyinelemeyle de erişebiliyorum, ancak bunun sahip olduğum problemi çözeceğinden emin değilim - yani aynı türden değişken bir argüman numarası almak istiyorum. Daha önce türlerini biliyorsanız
Sen her türlü * * int olduğundan emin olmak için 'enable_if' kullanabilirsiniz. –
Kod, bir grup ints'e daldığınızda çalışır. Başka bir şey verirsen işe yaramaz. Görev yerine getirilmiş gibi görünüyor. Sorun nerede? –
Sanırım sorun, derleme zamanında ints olduklarının garanti edilip edilmeyeceğidir. – znby