开发者

Template specialization within template definition: is this supported for all compilers or standard usage?

This compiled on VS 2008, but it seems like non-standard usage of templates.

template <class T>
class Foo
{
public:
  void bar(Foo<int> arg)
  {
    // do some stuff here
  }

  // more code ...
};

Is there an issue since the template specialization Foo<int> is contained within the def开发者_如何学Pythoninition of its own template class?


It's not really specialisation - you are just saying that function takes a parameter of type Foo <int> - the fact that the function is itself a member of the Foo class isn't really important. And yes, it's legal.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜