C++语言程序设计_ 类和对象(已建设完整知识点)_42 类和对象的定义及使用_

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
对于上面的Clock类,sizeof(Clock)=12 每个对象有各自的存储空间。一个对象的成员
数据被改变,不会影响到另一个对象的数据。
对象间的运算,与结构变量一样,对象之间可 以用“=”进行赋值,但不能用“>”、“<”、 “>=”、“<=”、“==”、“!=”进行比较,除 非这些运算符经过了“重载”。
类的定义
类是一种用户自定义类型,声明形式:
class 类名称 {
public: 公有成员(外部接口)
private: 私有成员
protected: 保护型成员
}; //必须有分号
3
公有类型成员
在关键字public后面声明,它们是类与外部 的接口,任何外部函数都可以访问公有类型数 据和函数。
4
私有类型成员
类与对象的定义及使用
南京信息工程大学滨江学院 李燕
1
C++中的类
类是具有相同属性和行为的一组对象的集 合,它为属于该类的全部对象提供了统一 的抽象描述,其内部包括属性和行为两个 主要部分。
利用类可以实现数据的封装、隐藏、继承 与派生。
利用类易于编写大型复杂程序,其模块化 程度比C中采用函数更高。
2
在关键字private后面声明,只允许本类中的 函数访问,而类外部的任何函数都不能访问。
如果紧跟在类名称的后面声明私有成员,则关键字 private可以省略。
5
保护类型成员
在关键字protected后面声明,与private类似, 其差别表现在继承与派生时对派生类的影响不 同。
6
类的成员
成员函数
类外访问
用法1:使用“对象名.成员名”方式访问 public 属性的成员。 Clock c1, c2; c1. Hour=9; c2. SetTime(8,20,10);
SetTime函数作用在c2上,即SetTime函数执行期间访
问的Hour、Minute和Second是属于c2这个对象的,
执行c2. SetTime不会影响到c1。
上。
14
使用类的成员函数和成员数据举例
类外访问
用法3:使用“引用名.成员名”方式访问 public 属性的成 员。 Clock d1; Clock &m=d1; m.Hour=9;
m. SetTime(9,20,10); //m的值变了,d1的值也变。
15
void ShowTime();
private:
int Hour, Minute, Second;
};
8
成员数据
void Clock :: SetTime(int NewH, int NewM, int NewS) {
Hour=NewH; Minute=NewM; Second=NewS; } void Clock :: ShowTime() { cout<<Hour<<":"<<Minute<<":"<<Second; } Clock ::说明后面的函数是Clock类的成员函数,而非 普通函数。
13
使用类的成员函数和成员数据举例
类外访问
用法2:使用“ 指针->成员名”方式访问 public 属性的成员。
Clock d1,d2; Clock *p1=&d1; Clock *p2=&d2; p1->Hour=9; p2-> SetTime(9,20,10); //SetTime作用在p2指向的对象
19
对象
C++中,类的名字就是用户自定义的类型的名字。 可以像使用基本数据类型那样来使用。Clock就是 一种用户定义的类型。
类的对象是该类的某一特定实体,即类类型
的变量。
声明形式: 类名 对象名;
例如: Clock myClock;
10
对象的内存分配及运算
与结构变量一样,对象所占的内存空间的大小, 等于所有成员的变量之和。
11
使用类的成员函数和成员数据
类中成员互访
直接使用成员名
类外访问
用法1:使用“对象名.成员名”方式访问 public 属性的成员。
用法2:使用“ 指针->成员名”方式访问 public 属性的成员。
用法3:使用“引用名.成员名”方式访问
public 属性的成员。
12
使用类的成员函数和成员数据举例
在类中说明原形,可以在类外给出函数 体实现,并在函数名前使用类名加以限
定。也可以直接在类中给出函数体,形ห้องสมุดไป่ตู้成内联成员函数。
允许声明重载函数和带默认形参值的函 数
成员数据
与一般的变量声明相同,但需要将它放
在类的声明体中。
7
类 的 成 员 举例
class Clock
{
成员函数
public: void SetTime(int NewH, int NewM,int NewS);
相关文档
最新文档