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
Post a Comment