第一讲类和对象.pptVIP

  • 7
  • 0
  • 约5.07千字
  • 约 29页
  • 2017-01-01 发布于河南
  • 举报
第一讲类和对象

第一讲 类和对象 本讲主要内容 结构体 类 对象 学习的建议 引言 思考: 同学们学习过那些数据类型,它们共有的特征是什么? 1. 结构体 格式: struct 结构名称 { 类型 成员1; 类型 成员2; … }; 结构体的引用 对结构体成员的访问方式: 用圆点运算符(.) 即: 结构体变量.成员 如果用指针访问结构体,所指对象包含结构的数据成员,访问形式为: ( *指针).成员 或者: 指针-成员 (建议使用) 结构体成员的深入 结构体成员可以是结构体 如: struct point { double x; double y; }; struct circle { point centre; double radius; } ; 实现单向链表的建立和输出 结构体类型练习 例题2:定义一个日期型结构变量,输入日期,判断该年份是否为闰年,并输出日期,格式为”yyyy-mm-dd”.( j103.cpp) 它仅描述了该类实体所具有的特征(年、月、日),由此可推断出该类型的值集(成员值集的笛卡尔积),即只定义了该类型的值集,而没有定义该类型量所能进行的操作集。 如:Date相关的操作:日期相加、相减等等操作。 解决上述问题的有效做法是像基本类型一样将其数据成员(Data Member,struct中定义的变量)和其上的操作(struct中的函数,亦称为成员函数/方法,Member Function /Method)显式地定义(绑定)在一起(C++对C的结构定义进行了扩充,允许将成员函数定义在结构体中),以显式地定义其值集和操作集,但前提是没有其它函数有权直接访问这个类型的任何数据成员,即: 这样,我们从形式上就定义了一个具有类型特征(一个值集和封闭于该值集上的操作集)的自定义类型?——?类。 2. 类的定义 类是在结构的基础上发展而来的。 类不但描述数据空间,还描述其操作的自定义类型。 在面向对象程序设计中,程序的基本单位是类,类是用户定义的数据和操作这些数据的函数的封装。类的对象使用自己的方法完成对数据的操作。 程序员的分工: 类的设计 类的使用 类 类定义的一般格式: class 类名 { private: 私有段数据成员和成员函数; public : 公有段数据成员和成员函数; protected: 保护段数据成员和成员函数; } ; 类设计练习 定义一个复数类complex,实现复数加、减和乘的功能。 数据成员 数据成员的定义与普通变量的 定义类同。 必须在类的内部进行定义。 定义是给出访问权限修饰符。 如果私有成员在第一段,可以省略关键字private 数据成员的先后顺序没有限制。 成员函数 成员函数的定义与普通函数的 定义类同。 定义是给出访问权限修饰符。 如果私有成员函数在第一段,可以省略关键字private 成员函数的先后顺序没有限制。 成员函数可以在类内,也可以在类外进行定义。 在类内定义,该成员函数处入被编译自动安排到最佳运行性能的状态,但开销较大; 在类外定义,提高程序的可读性,开销较小; 在类外定义时,在类内必须给出函数原型; 要用到域名空间引导符: :: 在类内定义的函数,我们成为内联函数,如果将内联函数写到类外部的话,需要在定义函数前加入一个关键字 inline 类设计的练习 例题3. 设计一个学生类,他具有的私有成员是:学号、姓名、数学、英语和计算机成绩;具有的公共成员函数是:输入学生信息,求三门课的总成绩,求平均成绩,显示学生信息。(j104.cpp) 课题练习 选择题 1、下列有关类的说法,( )是不正确的。 A、类是一种用户自定义的数据类型 B、只有类中的成员函数才能存取类中的私有数据 C、在类中如果不作特别声明,所有数据成员均为私有类型 D、在类中如果不作特别声明,所有成员函数均为私有类型 2. 在类中定义和实现的函数可以称为( )。 A)静态成员函数 B)内联函数 C)常成员函数 D) 虚函数 3. 对象 对象是类的实例。 就像数据类型和变量类同。 访问对象成员 一般的对象的成员表示如下: 对象名. 数据成员名 对象名.成员函数名( 参数列表 ) 指向对象的指针的成员表示如下: 对象指针名 -数据成员名

文档评论(0)

1亿VIP精品文档

相关文档