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

ric*_*bbo 0 c++ include

我有一个类定义如下:

Mirf.h

class Mirf{
public:
    void init(void);
};
Run Code Online (Sandbox Code Playgroud)

Mirf.cpp

#include <Mirf.h>

Mirf mirf = Mirf();

Mirf::init(){
    [Some Code Here]
}
Run Code Online (Sandbox Code Playgroud)

Wireless类使用Mirf实例:

Wireless.h

#include <Mirf.h>

class Wireless {
public:
    void init(void);
};
Run Code Online (Sandbox Code Playgroud)

Wireless.cpp

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

Wireless::init(){
    mirf.init();
}
Run Code Online (Sandbox Code Playgroud)

我的主要方法:

Main.cpp的

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

Wireless wireless = Wireless();

int main(){
    wireless.init();
}
Run Code Online (Sandbox Code Playgroud)

代码正常编译但是[Some Code Here]Mirf.cpp中没有调用:

我的代码有什么问题?

Ben*_*igt 5

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