namespace ns template typename class template typename struct typedef

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
namespace ns {
template<typename T> class A {};
}
template<typename T>
struct B {
typedef ns::A<T> Type;
};
template<typename T>
void Func(typename B<T>::Type b) {}
int main() {
B<int>::Type b;
Func(b);
return 0;
}