#include并不真正包含C ++中的代码

时间:2011-12-06 00:45:20

标签: c++ include

我的课程定义如下:

Mirf.h

class Mirf{
public:
    void init(void);
};

Mirf.cpp

#include <Mirf.h>

Mirf mirf = Mirf();

Mirf::init(){
    [Some Code Here]
}

Wireless类使用Mirf实例:

Wireless.h

#include <Mirf.h>

class Wireless {
public:
    void init(void);
};

Wireless.cpp

#include <Wireless.h>
#include <Mirf.h>

Wireless::init(){
    mirf.init();
}

我的主要方法:

Main.cpp的

#include <Wireless.h>
#include <Mirf.h>

Wireless wireless = Wireless();

int main(){
    wireless.init();
}

代码正常编译,但Mirf.cpp中的[Some Code Here]未调用:

我的代码有什么问题?

1 个答案:

答案 0 :(得分:5)

仅仅因为代码是#include d并不意味着它将被调用。只会自动调用main函数,需要在表达式中引用任何其他函数,否则它们将无法运行。