C++ template instantiation with complex type -



C++ template instantiation with complex type -

i want instantiate function template argument similar next complextype.

template <class u, class type> struct complextype; template <class type> struct complextype<double, type> { typedef type t; }; template <class type> struct complextype<int, type> { typedef type t; };

i got next in header file

template <typename u> void xyz( typename complextype<u, double>::t abc);

and implementation in cpp file

template <typename u> void xyz( typename complextype<u, double>::t abc) { abc = 1.0; } template void xyz( complextype<double, double>::t abc);

unfortunately gcc giving me next compiler error message

template-id xyz<> void xyz(complextype<double, double>::t) not match template declaration

any suggestions of how resolve this?

u isn't deduced argument. need explicit template specification:

template void xyz<double>( complextype<double, double>::t abc);

you can do:

template void xyz<double>(double);

c++ templates

Comments

Popular posts from this blog

maven fortify plugin : Unable to load build session with ID XXXXX .. See log file for more details -

c# - Primavera WebServices does not return any data -

android - Display emoji panel with genymotion - keyboard/touch input? -