一.类声明:私有放数据成员,公有放函数成员,私有成员通过成员函数来访问,公有成员可以直接被类对象的程序直接访问
函数定义:用作用域解析运算符来指出成员函数属于哪个类
类成员函数通过类对象来调用,使用句点运算符
二.构造函数
用来初始化函数,使用对象调用方法
三.析构函数
stock::~stock() {}
不承担任何重要的工作,完成清理工作
this指针指向用来调用成员函数的对象,作为隐藏函数传递给方法
类声明放在头文件中,定义成员函数的源代码放在方法文件中
友元函数:可以访问类的私有成员,声明前面加关键字friend
运算符重载函数可以作为成员函数,友元函数,普通函数。普通函数:通过类的公共接口间接访问私有成员;成员函数:可通过this指针访问本类的成员,可以少写一个参数,但是表达式左边的第一个参数必须是类对象,通过该类对象来调用成员函数;友元函数:左边一般不是对象。<< >>运算符一般都要申明为友元重载函数。
重载的运算符不必是成员函数,可以用友元函数来实现,但是必须至少有一个操作数是用户自定义的类型(对象类型本身)。
explicit关键字:该构造函数只能用于显式转换
定义转换函数才能将类对象转换成其他类型
默认构造函数: String::String {len=0;str=new char[1];str[0]='\0';}
复制构造函数:将新对象显式初始化为现有的对象
不能通过对象调用静态成员函数 int count=String::function();
new有两种用法:(1)申请内存,但位置由系统或编译器指定,与delete搭配进行动态内存管理;(2)在指定位置申请内存,由程序员指定,如在某一数组空间上,但释放时较麻烦;(p2 = new (buffer) int[10];)