c++中的类方法等价

Class Method Equivalent in C++

本文关键字:类方法 c++      更新时间:2023-10-16

在c++中是否有等价的类方法?我知道在Objective-C中,我们可以通过+ (void)aClassFunction;在头文件中声明一个函数,我们可以通过[myClass aClassFunction];调用它。在c++中有办法这样做吗?

static方法足够接近(但不是真正等效)替代Objective C的类方法。不同的是,在c++中你不能重写静态方法

是,使用static:

class MyClass {
public:
    static int classFunc() { return 45; }
};
cout << MyClass::classFunc() << endl;

您可以看到,通过类名,然后是范围解析操作符::,然后是函数名来访问它们。

是的,使用静态方法。

在.h文件中声明一个静态方法,如下所示:

static void DoSomething();

在.cpp文件中这样实现:

void SomeClass::DoSomething()
{
    /* do something */
}

然后像这样调用它:

SomeClass::DoSomething();