zoukankan      html  css  js  c++  java
  • [UE4]Grabbable接口

      首先,面向接口编程和面向对象编程并不是平级的,它并不是比面向对象编程更先进的一种独立的编程思想,而是附属于面向对象思想体系,属于其一部分。或者说,它是面向对象编程体系中的思想精髓之一。

      

    接口是一组规则的集合,它规定了实现本接口的类或接口必须拥有的一组规则。体现了自然界“如果你是……则必须能……”的理念。
      例如,在自然界中,人都能吃饭,即“如果你是人,则必须能吃饭”。那么模拟到计算机程序中,就应该有一个IPerson(习惯上,接口名由“I”开头)接口,并有一个方法叫Eat(),然后我们规定,每一个表示“人”的类,必须实现IPerson接口,这就模拟了自然界“如果你是人,则必须能吃饭”这条规则。

    一、Grabbable接口:可被抓取的接口。接口一般用形容词来命名。隐含的意思是Grabbable是物体的某一方面的属性,描绘的是物体某一个特征。

    二、哪些类可以实现Grabbable接口?

      1、所有能抓取的东西

      2、比如:椅子、武器(拿起来要有方向规定,比如剑锋利的一面朝外,盾牌的盾面也要朝外,武器都有手握的把手,不是随便握的)、门(打开和关闭都是围绕一个轴转动)、抽屉(只能往前后方向移动,并且只能移动一定的距离,不能无限移动)、石头。实现接口的函数名称一样,但是函数实现根据不同的物品可以不一样。

    三、在蓝图中新建接口

      1、在内容视图,右键选择“Blueprints——》Blueprint Interface”。

         

    四、在蓝图中实现接口,一个类可以实现多个多个接口,接口与接口之间互不影响。

      

    五、实现接口的函数体,要在Add Event节点下,如图所示。

       

      

      把原有的OnGrab改成On Grab Private,OnDrop改成On Drop Private,然后直接调用就可以了。使用一个自定义的函数体来实现接口函数体,可以有很多好处:可以使用局部变量、优化代码结构。

  • 相关阅读:
    一则线上MySql连接异常的排查过程
    有一种娱乐叫看别人编程
    程序员DNS知识指南
    中国式开源
    RSS与公众号
    论国人的素质和一个公司的商业道德
    《阿里游戏高可用架构设计实践》阅读笔记
    《淘宝数据魔方技术架构解析》阅读笔记
    软件体系架构_系统质量属性场景描述_结合《淘宝网》实例
    《余额宝技术架构及演进》阅读笔记
  • 原文地址:https://www.cnblogs.com/timy/p/10508006.html
Copyright © 2011-2022 走看看