Explicitly use defaults for some parameters in class template instantiation
问题 A class template can have multiple parameters that all have defaults. template<typename UnderlyingT0 = int, typename UnderlyingtT1 = long, typename StringT = std::string> struct options; Instatiating the template with just default parameters is easy: options<> my_default_options; But what if I want to change a subset of parameters? options<int, int, std::wstring> wstring_options; It is not obvious that int is a default for the first parameter while for the second it isn't. Is there something