在main()执行之前实例化类的对象

时间:2010-10-22 10:10:34

标签: c++

甚至在main()执行之前,是否可以实例化一个类的对象?如果是,我该怎么做?

2 个答案:

答案 0 :(得分:7)

在调用main()之前创建全局对象。

struct ABC {

   ABC () {
      std::cout << "In the constructor\n";
   }
};

ABC s;  // calls the constructor

int main()
{

   std::cout << "I am in main now\n";
}

答案 1 :(得分:5)

是的,你可以这样做:

#include <iostream>

struct X {
    X() { std::cout << "X()\n"; }
};

X x;

int main( int argc, char ** argv ) {
    std::cout << "main()\n";
}