" , X " - , . , , , .
, template<typename T2, typename T = int> struct X , . , , , .
, , :
template<typename T2, typename T>
double X<T2, T>::f = 14.0;
(N4527, ):
[14.5.1p3]
-, -, , , . , . , . .
[14.1p9]
[...] - template-parameter-lists , . [...]
, (T2 T) , , , .
template<typename T, typename U>
double X<T, U>::f = 14.0;
X. , .
f , template<typename T> double X<T>::f = 14.0; f template<typename T2> struct X<T2,int> ( ). f template<typename, typename> struct X undefined.
[14.5.5.3p1]:
. . - . . [...]