【问题标题】:c++ static or non-static templated member functions [duplicate]c ++静态或非静态模板化成员函数[重复]
【发布时间】:2016-05-10 09:04:28
【问题描述】:

我有一个班级 MyClass

class MyClass 
{
    template <std::size_t N>
    void MyFunc() { // Do something with N };
};

那么,MyFunc 是静态成员函数还是非静态成员函数?

【问题讨论】:

  • 你尝试编译你的代码吗?
  • 这才是我真正想知道的
  • 对于static 方法,您必须在其返回类型之前放置一个static 关键字。答案是如此之小,以至于我将其作为评论并链接副本以供进一步参考。

标签: c++ class


【解决方案1】:

它是一个非静态成员函数模板。如果你用static 声明它,那么它将是一个静态成员函数模板。

MyFunc&lt;0&gt; 是一个非静态成员函数,因此您可以这样称呼它(假设您将其公开):

MyClass c{};
c.MyFunc<0>();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-11
    相关资源
    最近更新 更多