«function-templates» etiketlenmiş sorular


4
Neden işlev şablonu kısmen özelleştirilemez?
Dil belirtiminin kısmen yasakladığını biliyorum , işlev şablonunun uzmanlaşmasını . Bunu neden yasakladığının gerekçesini bilmek isterim? Yararlı değiller mi? template<typename T, typename U> void f() {} //allowed! template<> void f<int, char>() {} //allowed! template<typename T> void f<char, T>() {} //not allowed! template<typename T> void f<T, int>() {} //not allowed!

2
Bu şablon işlevi neden beklendiği gibi davranmıyor?
Şablon işlevleri hakkında okuyordum ve bu sorunla karıştım: #include <iostream> void f(int) { std::cout << "f(int)\n"; } template<typename T> void g(T val) { std::cout << typeid(val).name() << " "; f(val); } void f(double) { std::cout << "f(double)\n"; } template void g<double>(double); int main() { f(1.0); // f(double) f(1); // f(int) …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.