C++程序设计基础(四)类与对象-创新互联
对同一类对象的共同属性和共同功能进行抽象,
数据抽象:描述某类对象的共有属性;
功能抽象:描述某类对象的共同功能;
抽象的实现通过类来实现。
封装指在类的声明中将数据代码和功能代码封装,通过类的声明中的{}实现。
继承在已有类的基础上定义更多功能。
多态性函数重载
类的设计与定义构造函数因为编译器无法知道对于由用户自定义的类所创建的对象该如何初始化,需要程序员提供初始化的方法,这个方法就是构造函数。
构造函数用于初始化一个对象,在创建对象实例时被调用。
C++中的构造函数可以是内联函数,可以重载,可以带默认参数值。
可以有形式参数,也可以没有。
如果构造函数可以没有参数值,则视为默认构造函数,不能同时存在两个默认构造函数,即两个可以没有参数的构造函数,否则编译器不知道该调用哪个函数。
如果用户没有给出构造函数,编译器会自动生成一个默认构造函数。
如果用户在定义类时给出了任意参数的构造函数,编译器都不在提供隐含的默认构造函数,除非用户在定义类时利用default关键字:
Class()=default;
C++11标准提供了委托构造函数的方式来避免过多的构造函数重载。
如下面图二是图一通过委托构造方法的实现。委托构造还有利于实现程序的一致性,当后续需要更改时只需要更改被委托的函数即可。
复制构造函数的语法:
注意这里复制构造函数的参数为对象的“常引用”(const 类名 &对象名),实现了对实参的保护。
C++的复制构造函数提供了一种用已有对象给新的对象初始化的方法。
当用户没有定义复制构造函数时编译器可以提供默认复制构造函数。
复制函数被调用的三种情况。
析构函数完成对象被删除前的清理工作,在对象消亡时自动调用。
类的组合你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
本文标题:C++程序设计基础(四)类与对象-创新互联
浏览路径:http://azwzsj.com/article/dpjsjo.html