1.构造函数只有在创建实例化时才会调用
构造函数是一种特殊的类成员函数,当创建一个类的对象时,它被调用来对类的数据成员进行初始化和分配内存。(构造函数的命名必须和类名完全相同)
题目:若PAT是一个类,则程序运行时,语句“PAT(*ad)[3];”调用PAT的构造函数的次数是( 0)
分析:
PAT(*ad)[3];
ad是个指向有着三个PAT元素的数组的指针;(看先和什么结合)
这里只是声明了指针,虽然指针指向的数组有三个PAT对象,但是没有实例化其中的对象,所以并没有调用构造函数。
2.拷贝构造函数和赋值函数
和普通构造函数、析构函数之类的一样,没有返回值。
2.1拷贝构造函数
拷贝构造函数是C++独有的,用基于同一类的一个对象构造和初始化另一个对象。
A a;
A b(a); //语句1
A b=a; //语句2
其中,语句1和语句2等价,都是拷贝构造函数来创建对象b.。
特别注意,使用拷贝构造函数创建对象时,这里b对象是不存在的,是用a对象来构造和初始化b的!!
2.2赋值函数
当一个类的对象向该类的另一个对象赋值时,就会用到该类的赋值函数。
A a;
A b;
b=a;
注意:这里a,b对象是已经存在的,是用a对象来赋值给b的!!
类中方法的别称
1.静态方法:类方法
2.成员函数 :实例方法。