c++学习(八)

来源:互联网 发布:快消品拜访客户软件 编辑:程序博客网 时间:2024/06/03 21:22

访问对象中成员的3种方法:

1.通过对象名和成员运算符(.)访问对象中的成员

2. 通过指向对象的指针访问对象中的成员

例如:

Time t1,*p;

p=&t1;

t1.set_time();

(*p).show_time();

p->show_time();


3. 通过对象的引用变量访问对象中的成员

引用变量共占同一段存储单元,实际上它们是同一个对象,只是用不同的名字表示而已。


例如:

Time t1;

Time &t2=t2;//t1和t2指向的是同一个对象


访问私有数据成员的常用方法:

1. 通过公共函数(public)访问私有成员。

2.通过set和get(return)函数访问私有数据成员。

3.利用指针将私有数据成员的值提取到类外。

例如:

类中x和y都是private。函数void getXY(int *px,int *py){*px=x;*py=y;}是public的。那么在类的外面主函数中,可以用

p1.getXY(&a,&b)将x和y的值提取出来赋值给aheb。

4,.利用引用将私有数据成员的值提取到类外。


例如:

类中有public函数

void getXY(int &px,int &py){px=x;py=y}

在外面主函数中调用p1.getXY(a,b)那么,a和px指的是用一个变量,b和py指的是同一个变量。然后,将x的值赋给px也就是赋给a,将y的值

赋给py就是赋给b。


利用面向对象的方法解决问题的时候,对象=算法+数据结构,程序=对象s+消息

在类外不能直接访问私有数据成员,但是可以通过调用公有成员函数(指针、引用等)来引用甚至修改私有数据成员。


私有实现:类中被操作的数据是私有的,实现的细节对用户是隐蔽的,这称为私有实现。


类的公有接口与私有实现的分离形成了信息隐藏


接口与实现分离是软件工程的一个最基本的源。


消息就是对公用函数的调用。



面向对象程序设计的主要特点:

1.封装性 

将有关的代码和数据封装在一个对象中,各对象间相对独立,互不干扰。

将对象中的某些部分对外隐蔽,隐蔽内部细节,只留下少量接口。

2. 抽象性

类是对象的抽象,对象是类的实例。

3. 继承性

最重要,解决软件的重用问题。

4. 多态性

由继承产生的相关的不同的类,其对象对同一消息会做出不同的响应。

只支持封装性和抽象性的为基于对象的程序设计。