当前位置: 首页 > news >正文

红色大气网站模板广告投放

红色大气网站模板,广告投放,布吉公司做网站,网页制作与网站建设技术大全 下载类 c 是一种人机交互的面向对象的编程语言,面向对象思想主要体现在 类 上。 类是具有相同属性和相同行为的对象的集合, 具有封装,继承,多态的特性。 类的定义 class 类名 { }; 封装 例如:人就是一种类…

c++ 是一种人机交互的面向对象的编程语言,面向对象思想主要体现在 类 上。

类是具有相同属性和相同行为的对象的集合, 具有封装,继承,多态的特性。

类的定义

class 类名 { };

封装

例如:人就是一种类,相同属性有年龄,性别等。相同行为有吃饭,喝水等。

把这些相同属性和相同行为封装到一个结构中就类。

class people{
public:
int age;
char sex;public:
void eat();
void drink();
};

同样,动物也是一种类,相同属性也有年龄,性别等。相同行为也有吃饭,喝水等。

class animal{
public:
int age;
char sex;public:
void eat();
void drink();
};

继承

这时,发现人和动物的相同属性和行为可以再提取封装成一种类。

class object {
public:
int age;
char sex;public:
void eat();
void drink();
};

有了 object 类,再定义人和动物的类的时候,可以继承object 类。

class people:pulic object {

};

class animal :pulic object {

};

类 people 和  类 animal 中没有定义属性(年龄,性别)和 行为(吃饭,喝水),但是继承类object ,所以类 people 和  类 animal同样有了属性(年龄,性别)和 行为(吃饭,喝水)。

这只是一层继承,如果把类 people 和  类 animal继续往下区分,还可以多层继承

class object 是基类,类 people 和  类 animal是子类也叫派生类。

多态

class animal :pulic object {
public:
void call ();//动物叫声
};class dog:animal {
public:
void call ();//狗叫声:汪汪
};class cat:animal {
public:
void call ()//猫叫声:喵喵
};

动物有叫声,不同的动物有不同叫声,这就是多态

到此为止,我们对类的框架有了一个大体的认识,接下来是到类的内部。

类的属性和行为

类内部知识点:权限,构造函数,析构函数,内联函数,友元函数等等

访问权限

三种权限:私有权限 private,保护权限 protected, 公有权限 public (如果没有标注权限,默认是私有权限private)

权限范围:public > protected > private

权限可以作用于 属性和行为,还有派生类(继承权限)。

私有权限:将类属性和行为作为的私有成员,不能在类外访问;
保护权限:将类属性和行为作为的保护成员,不能在类外访问但是可以被继承;
公有权限:将类属性和行为作为的公有成员,可以在类外访问。

私有继承:将基类保护和公有的成员作为派生类的私有成员,不能在类外访问;
保护继承:将基类保护和公有的成员作为派生类的保护成员,不能在类外访问但是可以被继承;
公有继承:将基类保护和公有的成员作为派生类的公有成员,可以在类外访问。

构造函数

构造函数有 默认构造函数,拷贝构造函数,移动构造函数

构造函数没有返回值,如果类中没有定义的构造函数,默认有  默认构造函数。
 

class object {
public:
int age;
char sex;public:
object(int age,char sex);//构造函数 声明
object(object  & obj);//拷贝构造函数 声明
object(object && obj) noexcept; //移动构造函数 声明~object();//析构函数 声明
};object::object(int a,char s){ //构造函数 定义
age =a ;
sex =s ;
}object::object(object & obj){ //构造函数 定义
age =obj.age ;
sex =obj.sex;
}object::object(object && obj) noexcept{ //移动构造函数 定义}~object() {  //析构函数 定义
}

构造函数可以对成员变量进行初始化,  可以在函数体内进行,也可以用初始化列表。

object :: object(int a,char s) :age(a), sex(s) {  //构造函数 定义}

拷贝构造函数:深拷贝和浅拷贝(只是对指针的拷贝,浅拷贝后两个指针指向同一个内存空间,深拷贝不但对指针进行拷贝,而且对指针指向的内容进行拷贝,经深拷贝后的指针是指向两个不同地址的指针。)

object :: object(object  & obj){ //拷贝构造函数 定义
age =obj.age ;
sex =obj.sex ;
}

拷贝构造函数使用场景:

1.用一个对象初始化另一个对象;

2.函数参数是类对象(即值传递。引用传递除外);

3.函数返回值是类对象。

移动构造函数 

原型:类名(类类型 &&); 以object类为例,其移动构造函数声明如下:

object ( object && obj )  noexcept;

 使用场景:

用一个临时对象(即将被销毁的对象)去初始化另一个同类型的对象。

主要是针对类中有指针变量的情况(类似浅拷贝,临时对象的指针变量置空NULL)。

析构函数

原型:~类名();  以object类为例,其析构函数声明如下:

~object(){

}

类中含有指针变量,需要在析构函数中处理,以防内存泄漏。

内联函数

1.在类中定义的成员函数,默认就是内联函数。

2.在类中声明的成员函数 前加上关键字 inline,类外定义的成员函数前 也加上inline,该成员函数是内联函数。

内联函数作用:减少了调用函数的步骤,而是直接替换。

友元函数

1.在类中声明的函数前加上关键字 firend. 不是类的成员函数。

以object类为例,其声明如下:

firend void show();// 类中声明

void show(){ // 类外定义

}

友元函数的作用:可以访问类的私有成员和保护成员。

同样,类中也可以有友元类,作用同友元函数一样。

虚函数

1.在类中声明的函数前加上关键字 virtual

以object类为例,其声明如下:

virtual void call();// 声明

虚函数作用:通过基类指针指向不同的派生类对象,也就是动态绑定,实现多态特性。

纯虚函数

1.在类中声明的函数前加上关键字 virtual,直接=0;没有函数体。

以object类为例,其声明如下:

virtual void call() = 0;

类中含有纯虚函数,该类是抽象类,不能实例化。

在其派生类中必须对该函数重定义,否则该派生类也成了 抽象类。

http://www.dinnco.com/news/55914.html

相关文章:

  • 合肥网站建设政务区google年度关键词
  • 找网络公司做网站需要注意网站seo外链平台
  • 怎么做提升网站转化率b站推广是什么意思
  • 河南省住房和城乡建设厅官网查询包头seo
  • 电子商务营销优势厦门seo屈兴东
  • 灰色网站建设怎样注册个人网站
  • 二手交易网站开发的十大搜索引擎排名
  • 什么网站建设比较好的头条发布视频成功显示404
  • 要给公司做一个网站怎么做的吗网址安全检测中心
  • 石家庄建设银行营业网点成都网站优化及推广
  • 那家财经网站做的好手机打开国外网站app
  • 做外贸的阿里巴巴网站是哪个更好百度推广找谁做靠谱
  • 嘉兴网嘉兴网站建设南宁关键词排名公司
  • 怎么做网站背景网站收录提交入口
  • 效果好企业营销型网站建设关键词排名优化易下拉技术
  • 三门峡做网站系统优化软件哪个最好的
  • 做网站公司大型网站优化技术
  • 网站外链软件怎样制作网页新手自学入门
  • 建设网站的市场定位优化服务内容
  • 嘉兴制作网站企业谷歌seo排名优化
  • 社交网站开发背景免费建站的网站有哪些
  • 什么是最经典最常用的网站推广方式网站一年了百度不收录
  • 网站接入商查询今日十大热点新闻头条
  • 建设网站的主要流程图seo优化软件有哪些
  • 网站建设工资 优帮云北京seo关键词排名
  • 搭建网站服务器多少钱深圳纯手工seo
  • 淄博企业高端网站建设短视频营销成功的案例
  • 潍坊网站建设电话怎么做好推广和营销
  • 精湛的合肥网站建设友情链接建立遵循的原则包括
  • 网页制作教程哔哩seo实战