Chinaunix首页 | 论坛 | 博客
  • 博客访问: 653580
  • 博文数量: 150
  • 博客积分: 4070
  • 博客等级: 中校
  • 技术积分: 1795
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-23 21:44
文章分类

全部博文(150)

文章存档

2012年(1)

2011年(123)

2010年(26)

分类: C/C++

2011-08-02 16:00:47

1. 什么函数能在main函数前执行?
   全局对象的构造函数
  1. #include <iostream.h>
  2. #include <stdlib.h>

  3. class Base
  4. {
  5. public:
  6.     Base()
  7.     {
  8.         cout<<"构造函数"<<endl;
  9.     }
  10. };

  11. Base b;

  12. void main(void)
  13. {
  14.     cout<<"main函数"<<endl;
  15. }
 
2. 有方法可以使得在main结束后在执行某个函数吗?
   可以,通过使用_onexit(函数名)来注册函数,则注册的函数将在main函数结束后执行,但是需要注意,注册的函数返回值必须是整形,且形参为void。
  1. #include <iostream.h>
  2. #include <stdlib.h>

  3. int fun()
  4. {
  5.     cout<<"fun-执行于main函数结束后"<<endl;
  6.     return 0;
  7. }

  8. void main(void)
  9. {
  10.     cout<<"main函数开始"<<endl;
  11.     _onexit(fun);
  12.     cout<<"main函数结束"<<endl;
  13. }
阅读(962) | 评论(0) | 转发(0) |
0

上一篇:C++引用总结

下一篇:exit()和_exit() 的区别

给主人留下些什么吧!~~