在main()之前调用Bootstrap函数

来源:互联网 发布:江西网络行政学院 编辑:程序博客网 时间:2024/05/02 01:57

      在所有可执行程序中,调用的第一个函数通常都是其入口main(),但可以使用一些技巧来修改这种行为,例如,考虑一个协调高尔夫俱乐部运作的时间安排程序。一般来说,程序首先需要获取来自各方面的信息,以精确地安排高尔夫俱乐部每天的运作情况,所以可能需要首先调用“bootstrap"函数,为main()准备信息。

       全局对象(即具有文件作用域的对象)能满足这种要求,因为全局对象将在程序的main()函数被调用之前创建。程序员可以创建一个类,其默认构造函数调用所有的bootstrap函数。例如,它们初始化对象的不同数据部分。这样便可以创建一个全局对象。下面的代码说明了这种技术。

class CompileRequirements

{

      private:

               //有用信息

     public:

        CompileRequirements()

         {

           GetDataFromSales();

          GetDataFromManufacturing();

          GetDataFromFinance();

        }

};

//全局对象

CompileRequirement    req;

int   main()

{

        //读req并生成时间安排表

        BuildScheduleFromReq();

         .......

}  

 

原创粉丝点击