C ++从另一个静态函数调用静态函数

时间:2010-11-03 04:08:32

标签: c++ static-methods static-functions

在头文件中有一个静态函数

    class Diagnostics {
    public:


    static void functionA(){
    }

    static void functionB(){
    some code //works fine until enters the loop below
    variable_name // works fine here.
    if (condition){ // 
    variable_name; // after condition is met , i step in here, debugger cannot examine
                   // the vairable_name which was fine above. right after i try to step                      over , i get SIGSEV error
    some_code; // doesnt even come here. Process exited with SIGSEV
    function C(); // tried using classname::functionC , didnt work either

        }
    }

static void functionC(){
}

2 个答案:

答案 0 :(得分:4)

static内的

class表示有问题的成员或方法不对某个对象进行操作,即它没有定义this,但它仍然在类的命名空间中

类外的

static表示它在C中的含义:变量或函数没有外部链接,即当前编译单元之外的东西无法链接到它。

两件完全不同的事情。

答案 1 :(得分:0)

我不知道问题是什么。 现在工作正常。最初是在我调试时发生的。 然后我刚刚执行而不是调试,工作正常。 然后我再次尝试调试,这次工作正常。