类:用来”定义“或者说是“规范”一个对象的模板 ,大致可以分为两部分“属性”和“操作”。
例如:我想用粘土捏苹果,提前定义了两个“标准属性“颜色”和“大小”,颜色:红绿蓝黄,大小:有大,中,小三个。”操作“我选择先做好两个模具用他们直接做苹果, 一个是圆的 一个叶状的,有了这个定义的模板,我可以做出 绿叶红色的苹果、黄叶蓝色的苹果......
类格式:
class classname{
//class:C++类关键字 classname:自定义类名
public:
private:
protected:
};
public: 存放公共成员可以是变量可以是函数,可以外部使用
private: 存放私成员可以是变量可以是函数,外部不可访问,只有类内和友元有权限访问
provate:目前不熟
用类定义一个对象
classname object /*上面定义过类名classname 这里用它定义了一个对象object
对象访问数据成员
对象名.成员
object.数据成员
分割线——————————————————————————————————
六个函数:内联、构造、析构、拷贝构造、友元、自定义函数
内联函数:用于简单函数,省去代码执行之间的跳转过程,直接把代码拷贝到当前位置执行
inline int getc();
inline int getc{
/////
return 0;
}
构造函数:在定义类时用于初始化一些数据
classname();
classname::classname(//这里初始化)
{
//无返回值
}
析构函数:用于创建完对象执行完操作后销毁这些对象
~classname();
classname::~classname(void)
{
cout<<"delete_object\n";
//无返回值
}
拷贝构造函数:通过使用另一个同类型的对象来初始化新创建的对象
classname(const classname &object);
classname::classname(const classname &object)
{
//这里可以选择要拷贝对象object的属性
//无返回值
}
友元函数:定义在类外部(声明同样在类内)但并非成员函数,可访问private私有成员
class classname{
//class:C++类关键字 classname:自定义类名
public: friend int getc();
private: int x;
protected:
};
friend int getc(classname object)
{
cout<< object.x;
return 0;
}
友元其他对象需在 classname中放置声明
class classname{
//class:C++类关键字 classname:自定义类名
public: friend class classname2;
private:
protected:
};
自定义函数:
int getc();
int classname :: getc()
{
return 0;
}