在main()函数之前调用Bootstrap函数

在所有可执行程序中,调用的第一个函数通常都是其入口main(),但可以使用一些技巧来修改这种行为。全局对象(即具有文件作用域的对象)能满足这种要求,因为全局对象将在程序的main()函数被调用之前创建。程序员可以创建一个类,其默认构造函数将调用所有的bootstrap函数。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//bootstrap
#include <iostream>
using namespace std;
class Bootstrap{
public:
Bootstrap(){
cout<<"Bootstrap.\n";
}
~Bootstrap(){
cout<<"~destory.\n";
}
};
Bootstrap req;
int main(){
cout<<"hello world!\n";
return 0;
}