次のように「constA&」ではなく「Generic」と表示されるのはなぜですか?dynamic_cast<>
私は、最初の電話をかけるためのトリックをしただろうと推測しましたが、f
そうではありません。どうしてこれなの?
struct A {}; struct B : A {};
template <const A &> void f() { std::cout << "const A &"; }
template <typename T> void f(T) { std::cout << "Generic"; }
int main() {
B b;
f(dynamic_cast<const A &>(b)); // "Generic"
}