是否可以将纯虚函数覆盖到模板?

Tah*_*RAZ 2 c++ templates

我不知道这是否可能:让我说我有一个接口定义:

virtual void func()=0;
Run Code Online (Sandbox Code Playgroud)

是否有可能在具体类中我重写它如下:

template <std::size_t  number> 
void func(){ /* do something with number... */ }
Run Code Online (Sandbox Code Playgroud)

谢谢!

R S*_*ahu 6

是否有可能在具体类中我重写它如下:

不,那不行.

想想这个案子.

struct Base
{
   virtual void func()=0;
};

struct Derived : Base
{
   template <std::size_t  number> 
   void func(){}
};
Run Code Online (Sandbox Code Playgroud)

Base* b = new Derived;
b->func(); // Which of the Derived::func() should that resolve to at run time?
           // Derived::func<0>()?
           // Derived::func<10>()?
           // ...
Run Code Online (Sandbox Code Playgroud)

这根本没有概念意义.