c语言实现面向对象编程思想,1.2.3ST的面向对象编程思想

ST语言是一种高级语言,其语法类似于C语言。大家学英语的时候肯定学过英语的语法,学完语法之后就能知道该怎么用英语表达自己的想法了。其实学习编程也是一样的,我们先熟悉编程语言的语法,然后用掌握的编程语言语法及词组,进行“造句”,然后会造句之后,我们就可以尝试写一些功能段落,功能段落掌握之后,我们就可以尝试使用“ST"写”文章“了。

上面说到ST语法和C语言的语法很像很像,但是其又比C语言高级一点。C语言是面向过程的编程语言,而ST文本是面向对象的编程语言。下面为大家简单介绍一下面向对象的编程思想。

什么是面向对象呢?举一个我个人理解的例子:对于人这种对象来说,人具有眼睛,耳朵,鼻子,手,脚等基础属性。这些属性是正常人都具备的,所以我们就可以将这些基础属性封装成一个功能块。

然后我们在用程序表示张三李四王二麻子的时候,都可以调用这个功能块,因为张三李四王二麻子都有这些人类的基本特征,而对于他们个人来说唯一不同的就是这些基础属性的特征值,比如眼睛多大,耳朵多大,眼睛是圆的还是扁的,是单眼皮还是双眼皮等等。我们只需要向这个基本属性功能块中传入相应的特征值参数就行了。

大家理解了么?这就是面向对象的思想,我们首先有一个目标对象,而这个目标对象,可能有一些通用的属性我们可以拿出来,做成一个基础功能块,便于给其他类似的对象使用这个功能块里的程序,这样能大大提高程序的重复使用率,减少我们编写重复性的代码,这样编程效率就提升了。

我们编程的时候,就可以根据我们的目标对象特有的特征属性,抽象出这类“对象”的基础属性特征,在我们其他地方要使用这种“对象”的时候。我们就可以直接“实例化”这种类型的对象。只有熟悉了面向对象的编程思想之后,我们才有可能把ST语言功力发挥到极限。

好的,面向对象的概念,大家应该是搞清楚了,我们看下面一个例子,看不懂也没关系,先有个概念就好了。以下四段代码,实现的都是报警器报警功能。每段代码实际上都是YJ_BeepAlarm这一种类型,只是传入这个功能块里的参数不同罢了。在YJ_BeepAlarm这个功能块类型中,我们抽象出所有报警功能具备的基础属性,然后写成了YJ_BeepAlarm功能块。

第一部分,我们首先声明了四种报警功能声明为同一种类型的变量也就是YJBeepAlarm类型变量。下面FB启动报警、FB单批报警、FB丢标报警、FB_缺料报警这些都是我们起的“姓名”,而YJ_BeepAlarm,就是这些变量对应的“对象类型”。

//------四种报警功能声明-----------------------

FB_启动报警 : YJ_BeepAlarm;

FB_单批报警 : YJ_BeepAlarm;

FB_丢标报警 : YJ_BeepAlarm;

FB_缺料报警 : YJ_BeepAlarm;

//------启动报警功能块的调用--------------------

FB_启动报警(

ib_报警启动:= (gi_停切_自动步骤 = 6000),

ib_报警停止:= gr_停止RTrig.Q,

if_报警周期:= 1000,

if_报警占比:= 0.4,

id_报警次数:= 3,

ob_报警完成=> gb_启动报警完成,

ob_报警输出=> vb_启动报警);

//-------缺料报警停机功能--------------------------

FB_缺料报警(

ib_报警启动:= ib_放料缺料接近光电,

ib_报警停止:= gr_停止RTrig.Q,

if_报警周期:= 500,

if_报警占比:= 0.3,

id_报警次数:= 3,

ob_报警完成=> ,

ob_报警输出=> vb_缺料报警);

FB_单批报警(

ib_报警启动:= (vf_单批剩余个数 <= hf_批满报警提前) AND hb_批满报警,

ib_报警停止:= gr_停止RTrig.Q,

if_报警周期:= 150,

if_报警占比:= 0.9,

id_报警次数:= 1,

ob_报警完成=> ,

ob_报警输出=> vb_单批报警);

FB_丢标报警(

ib_报警启动:= gf_送料_丢标次数 <> gf_送料_丢标次数Old AND hb_白袋彩袋,

ib_报警停止:= gr_停止RTrig.Q,

if_报警周期:= 150,

if_报警占比:= 0.8,

id_报警次数:= 1,

ob_报警完成=> ,

ob_报警输出=> vb_丢标报警);Copyright © www.yanjuntech.cn 2018-2025 all right reserved,powered by Gitbook该文件修订时间:

2019-03-18 14:31:07

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值