在c++类中构造函数一般会在类的对象被创建时调用,总结起来有3中情况:

第一种:

MyClass class;//在栈中产生一个对象

第二种:

MyClass* class = new MyClass();//在堆中产生一个对象

第三种:

static MyClass class;//在函数活动范围之外产生的一个对象


第一种和第二种在配置内存(来自堆或栈)之后立刻产生一个隐藏的构造函数的调用,而第三种情况必须由startup来启用(startup是mian函数调用前被调用的,有c++编译器提供,链接到代码中)。