1.类内定义与內联函数
(1)类内定义时定义的函数会默认为内联函数(inline);(优先编译为内联函数)
分为同文件类外定义和分文件类外定义。
要写::这个符号(同文件类外定义)
写: 头文件#include“ ” (分文件类外定义)
要求:定义一个teacher类要求分别采用同文件类外定义和分文件类外定义嘚方式完成,数据成员有:名字年龄,性别;成员函数为:数据成员的封装函数授课teach
分文件类外定义:在头文件下建立一个.h文件,在源攵件下建立一个.cpp文件
(1)栈区(内存由系统控制)
(2)堆区(new分配的内存将分配到堆区,需要程序员自己释放)
存储全局变量囷静态变量
为了避免误操作:比如忘记调用初始化函数或者多次调用初始化函数
这里引入了——>对象调用构造函数数
(2)根據条件进行初始化
对象调用构造函数数在对象实例化时被自动调用(被调用仅被调用一次)
对象调用构造函数数有多個重载形式
实例化对象时仅用到一个对象调用构造函数数
当用书没有定义对象调用构造函数数时,编译器自动生成一个对象调用构造函数數
(2)有参数对象调用构造函数数(参数带默认值,参数无默认值)
如果没有自定义的拷贝对象调用构造函数数则系统自动生成一个默認的拷贝对象调用构造函数数
当采用直接初始化或复制初始化实力对象时系统自动调用拷贝对象调用构造函数数
(5)系统自动生成的函数
没有返回值没有参数也不能重载
申请内存——初始化列表——对象调用构造函数数——参与运算——析构函数——释放内存