如何隐藏system("pause")

王朝other·作者佚名  2006-12-17
窄屏简体版  字體: |||超大  

如何隐藏system("pause")

如何隐藏system("pause") 用过Dev-C++的人, 一定知道要停止输出屏幕, 必须在main体内加上类似system("pause")或者cin.get()这样的语句。下面我们利用一些C++的特性以及标准库函数,示范如何把system("pause")隐藏起来。

/* Pause.h */

#include <iostream>

#include <cstdlib>

#ifndef __CPAUSE__

#define __CPAUSE__

class CPause

{

static void system(){

std::system("pause");}

public:

CPause(){

std::atexit(&CPause::system); }

}m_pause_;

#endif //__CPAUSE__

其中atexit是指定一个函数在程序结束时运行, m_pause_是CPause的实例。它的构造函数会在main()主函数之前执行, 其实也就是利用全局对象的这个特性。

运行例子:

/* example.cpp */

#include <iostream>

#include "pause.h" // 现在只要定义pause头文件, 要可以把输出屏停住了.

using namespace std;

int main()

{

cout << "Hello, World" << endl;

return (0);

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航