C++在什么时候运行构造函数

来源:百度知道 编辑:UC知道 时间:2024/07/02 20:49:11
C++在什么时候运行构造函数

构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。
  C++语言为类提供的构造函数可自动完成对象的初始化任务,全局对象和静态对象的构造函数在main()函数执行之前就被调用,局部静态对象的构造函数是当程序第一次执行到相应语句时才被调用。然而给出一个外部对象的引用性声明时,并不调用相应的构造函数,因为这个外部对象只是引用在其他地方声明的对象,并没有真正地创建一个对象。
  当对象被创建时,运行构造函数。

创建对象的时候,编译器会自动调用匹配的构造函数,如果不提供显式的构造函数,会自动创建一个无参构造函数

创建对象的时候,就会为你分配一个空间,如果不创建就会自动生成一个省略参数的构造函数。调用的时候会运行构造函数。

在对象创建的时候,先分配成员变量的空间,然后执行构造函数中的内容。

class A
{
public:
A();
private:
int m_tmp;
};

A::A()
: m_tmp(0)
{
m_tmp = 1;
}

A a;
A* aa = new A;

比如 类 Class_A
一是 创建对象 Class_A a;

而是 直接调用其构造函数 Class_A();