面向对象与面向过程的区别?

2020-02-04 09:20发布

也不知道这个问题该发在那个栏目里了 就发在51栏目里吧  我想很多菜鸟都和我一样 搞不懂面向对象与面向过程的区别 希望老鸟们多多指教;

在百度里搜索里许多帖子,都讲面向对象与面向过程的区别,但是几乎都讲不明白。我想可能这就是搞硬件出身的和搞软件出身的不能融合到一起造成的吧;

我单片机执行是一步一步的执行的。我先去干这个,然后再去干那个,然后就是等待,这个就是面向过程,但是我很难理解面向对象;(本人没有PC机编程经验,就懂得些单片机)

我想好的实例更能说明一切吧。不要举太多例子,就像刚开始学中断,用烧水洗衣服做饭但是我还是花了好久好久才理解明白中断是干什么的,其实如果用最简单的程序举例,或许几行代码就能说清楚了;

这个问题困扰我好久了。希望老鸟们赐教,谢谢~
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
47条回答
118139
2020-02-07 10:30
从这本书
<<面向对象的理论与C++实践>>里摘录一些内容


面向对象在计算机中的含义跟类息息相关
类是面向对象系统中最重要的概念,面向对象程序设计中所有的操作都归结为对
类的操作。。

类与对象的关系:
通常我们把具有同样性质和功能的东西所构成的集合称为类,在C++中可以把具
有相同内部存储结构和相同一组操作的对像看成属于同一类,在指定一个类后,
往往把属于这个类的对像称为类的实例,实际上对象和实例表达的是同一个意思
如何来定义一个具体的对像,也就是使类实例化成为我们所需要的具体事物,实
际上对像的创建过程就是类实例化的过程

创建一个具体对像有两种方法:
(1)在定义类的同时创建对像  我们在给出类定义描述时创建对像如下所示

class date{
             int month,day,year;
     
           public:
             void set(int,int);
             void print();
             int getyear();
             int getmonth();
             int getday();   
          }tt;    //这里同时创建对像tt

在定义类date类的同时创建了data类的对像tt,这时创建的是一个全局对象


(2)在使用时定义对象
上面的在定义类同时创建对像他的生存周期在整个程序过程中一直存在,只有在整个程序结束时才会自动消亡,为了消除这种弊端,可以在需要使用些类对象时,再在使用它的函数中定义对像,格式与一般变量定义相同如
data tt;                                                               
此时定义了tt是data类的一个对像


下面是使用类的例子:

class point{
            int x,y;
          public:
           void setpoint(int vx,int vy) {x=vx;y=vy;}
           };


void f1()
  { point p1;              //创建point类的对像p1
    p1.setpoint(10,10);    //给point类对像p1的私有成员赋值

  }

一周热门 更多>