Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: C++
Expertise: Advanced
Nov 6, 1999



Building the Right Environment to Support AI, Machine Learning and Deep Learning

A Member Function Template may not be Virtual

A reader tried to declare a template as a virtual member function of a class. However, his compiler refused to compile the code. The reader wanted to know what he was doing wrong. The answer is simple: the ANSI/ISO Standard says (14.5.2 p 3): "A member function template shall not be virtual." For example:
  template <class T> struct A 
    template <class C> virtual void f(C);   

/* error, virtual template function */ virtual void g(); // OK, g is not a template };
Danny Kalev
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date