c++面向对象程序设计

什么是对象?

现实生活中的各种物品,水瓶,铅笔,书本,苹果,书包这些都是对象,对象可以是任何东西。而在程序设计中,对象实际上就是变量,在程序设计中的各种变量,不管是整型、实数型、字符型、布尔型都是对象。一个程序就是一大串的对象互相通过传递信息告诉彼此该怎么做。每一个对象都有他自己的内存,这个内存又是由其他对象组成。

面向过程和面向对象

c语言是面向过程的程序设计,而c++则在c语言的基础上增加了面向对象的概念。面向过程首先是分析问题,然后根据算法将解题步骤一步一步地用c语言的语句描述出来,这是一种以“过程”为中心的编程思想。而面向对象则是将问题划分为一个个对象,然后将这些对象通过一些方法联系起来,让程序中的一个对象告诉另一个对象要做什么,以此来解决问题。面向过程和面向对象在程序中的区别在于,面向过程是将数据和函数分开,程序运行时将数据传入函数进行操作。而面向对象只是将相关的数据和函数封装起来,成为一个类。这样函数就可以直接访问类中的数据。

举个例子,一个人要上车,该怎么实现。用面向过程的思路来看,一个人上车,就要先打开车门,然后上去,最后关门,这样将问题分成一个个步骤来解决。而从面向对象的思路来看,就是将问题分为两个对象,车和人,车有打开和关上两种状态,还有打开和关上这两个动作。人对象有上车动作。然后将这两个对象联系起来,首先人对象告诉车对象打开车门,车对象接受到信息后执行打开车门操作,然后改变车门状态,接着人对象执行上车动作并告诉车对象关闭车门,最后车对象执行关门动作。

面向过程和面向对象的优缺点

面向过程:

优点:程序流程化,程序步骤清晰,便于分析。性能高,消耗资源少。程序设计效率高,代码更精简,结合数据结构可开发高效率程序。

缺点:程序不易维护,复用性低,扩展功能差。

面向对象:

优点:程序结构模块清晰,代码复用率高,可继承,扩展,覆盖。设计出的系统耦合度低,便于后期维护。

缺点:性能差,对计算机的时间和空间消耗大。

类的定义

类的定义包含四个要素:类名,数据成员,函数成员,访问限定符。类的数据成员只能在类的内部定义,定义方法和变量一致,而类的函数成员则在类的内外部都可以定义。在类外定义函数时需要注意为了表明函数是类的成员,需要添加前缀“类名::”。类的成员函数能访问当前对象的全部数据和函数已经同类其他对象的全部数据和函数。

如上图plxi就是类名,a,c,x是类的数据成员,funx()是函数成员,private和public是访问限定符,private是私有,不能被访问,public则能被访问,而能被访问的部分就作为对外接口供别人使用。 

类的封装

类的封装有两个层次,第一个层次是在语法规则中明确 “数据-数据、数据-函数、函数函数” 的联系。数据和数据和处理函数被封装在一个类中,类的函数成员可以直接使用类的数据成员,也可调用其他函数成员。第二次层次是约束外部访问,保护类中的数据。公共访问权限的函数成员作为对外的操作接口,供外界访问使用。对类的私人访问权限的成员访问操作只能通过访问类的对外接口来完成,这样可以防止一些误操作。

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值