转载时请注明出处和作者联系方式
文章出处:http://blog.youkuaiyun.com/chenchong08
作者联系方式:vision_chen@yeah.net
下面给出一个可移植的在main()函数之前和之后调用自己函数的一种实现方式:
借助全局变量先于main()构造和后于main()析构的原理。
#include <cstdio>
#include <cstdlib>
void before_main()
{
printf("This is before main()\n");
}
void after_main()
{
printf("This is after main()\n");
#ifdef _WIN32
system("pause");
#endif
}
namespace
{
struct S_Test
{
S_Test()
{
before_main();
}
~S_Test()
{
after_main();
}
} aTest;
}
int main( int argc, char **argv )
{
printf("This is in main()\n");
return 0;
}
VC2010运行结果如下: