私は多くの記事を読んで、メンバーテンプレートを特殊化するときにクラステンプレートの場合、特殊化されたメンバーテンプレートを含むクラスも明示的に特殊化する必要があることを読みました。標準でそれについてのポイントはありますか?また、そのような制限を設ける理由はありますか? つまり、ボンネットの下です。
これが許可されない理由。
template <typename T>
class A
{
template <typename U>
void foo()
{}
};
template <typename T>
template <>
void A<T>::foo<int>()
{}