文档介绍:第3章类与对象
1
《面向对象技术与Visual C++》
本章主要内容
类
对象
构造函数和析构函数
静态成员
友元
2
《面向对象技术与Visual C++》
数据类型
C语言中内置数据类型示例:
-- int 可以对整数有:+,-,*,/,求模操作%.
可以用sizeof(),来求得其在特定的平台上
的大小,如4字节.
构成数据类型的两大要素:
-- 存放数据对象需要的内存大小
-- 可使用得数据对象的操作或方法
3
《面向对象技术与Visual C++》
自定义数组数据类型
C++对数组类型提供了内置支持,但只限于”只读写单个元素”的机制
需要的功能可能有:
-- 把一个数组副赋值给另一个数组;
--对两个数组进行比较;
--取得数组的大小;
--数组内元素的排序,等等
4
《面向对象技术与Visual C++》
类
从语言角度来说,类是一种新的数据类型,而对象是具有这种类型的变量。类是一种将数据和作用于这些数据上的函数组合在一起的复杂数据类型,是可重用的基本单元。
一个类就是一个用户自定义数据类型。
类是面向对象程序设计的核心,利用它可以实现对象的抽象、数据和操作的封装以及信息的隐蔽。
5
《面向对象技术与Visual C++》
类定义
类定义一般分为说明部分和实现部分。说明部分是说明该类中的成员,实现部分是对成员函数的定义。
类定义的一般格式如下
class <类名>
{
public:
<数据成员或成员函数的声明>;
private:
<数据成员或成员函数的声明>; 说明部分
protected:
<数据成员或成员函数的声明>;
};
<各个成员函数的定义> 实现部分
6
《面向对象技术与Visual C++》
访问控制
访问权限有三种类型:
private、public和protected。
三种访问权限的成员与出现的先后顺序无关,并且允许多次出现,但是一个成员只能具有一种访问属性。
7
《面向对象技术与Visual C++》
成员函数的实现
成员函数是类中描述行为的成员,同时也是对封装的数据进行操作的惟一途径。
类定义的格式中,一般在类中说明成员函数原型,在类外进行成员函数的具体实现,<各个成员函数的定义>是类的实现部分。同时,如果成员函数已经在类中定义,则不需要在类外实现。需要注意的是,在类中定义的成员函数自动成为内联函数。
8
《面向对象技术与Visual C++》
若在类体外实现,则需要使用作用域运算符“::”,用它来标识某个成员函数是属于哪个类的,其定义格式如下:
<返回值类型> <类名>::<成员函数名>(<参数表>)
{
<函数体>
}
9
《面向对象技术与Visual C++》
对象
对象的定义格式与普通变量相同。定义格式如下:
<类名> <对象名表>;
其中,<对象名表>中可以有一个或多个对象名。当有多个对象名时,用逗号分隔。<对象名表>中还可以是指向对象的指针名或引用名,也可以是对象数组名。
10
《面向对象技术与Visual C++》