C++代码块中类似PHP的静态方法


PHP-like static methods in C++ CodeBlocks

我在C++中有一个简单的类声明

class A {
    static void foo(void){
       printf("Bar'n");
    }
};

在Visual Studio 2013中,我可以通过A::foo()使用它,但在CodeBlocks中,我会遇到undefined reference错误。如何在CodeBlocks中创建像PHP中那样的抽象方法(不需要创建对象来调用这些方法)?

我的代码(在Visual Studio 2013中工作):https://github.com/ventaquil/Blake-512

您可以尝试如下示例:

样品.h

class Sample
{
    static int boo;
    static void init()
    {
        boo = 1;
    }
}

样品.cpp

#include "Sample.h"
int Sample::boo;

用法:

#include "Sample.h"
cout << Sample::boo;

CodeBlocks include方法存在问题。在Visual中,我包含了头文件,它工作正常,但CodeBlocks很愚蠢,不理解它。