zoukankan      html  css  js  c++  java
  • cocos2dx3.2 画图方法小修改之 C++ final学习

         今天用cocos2dx 3.2版本号学习画图功能,

          于是我重载Node 的draw方法。发现报错,

          点击方法进入到Node下 发现draw()方法后面多了一个 final。


         以下我简单解说一个下final的用途

          1 final类:
          
          final类不能被继承,因此final类的成员方法没有机会被覆盖,默认都是final的。

    在设计


    类的时候,假设这个类不须要有子类,类的实现细节不同意改变。而且确认这个类不会被

    扩展,那么就设计为final类。final方法不能够被子类方法覆盖,但能够被继承。

           2 final方法
           
          假设一个类不同意其子类覆盖某个方法,则能够把这种方法声明为final方法。
         
          使用final方法原因有二
          
          第一,把方法锁定。防止任务继承类改动它的意义和实现。
          
          第二,搞笑。编译器在遇到调用final方法时候会转入内嵌机制,大大提高运行效率。

          3 final变(常量)
         
          用final修饰的成员变量表示常量,仅仅能被赋值一次,赋值后值无法改变!

      
          final修饰的变量有三种:静态变量。实例变量和局部变量。分别表示三种类型的常量。

          全部我们不能够重写draw()方法,那我们怎么办呢? 别急。我看见draw方法以下还有

    一个有參数的draw方法。

     
         所以我们能够重载这个带參数的方法去绘制条条框框。
  • 相关阅读:
    [LeetCode]Power of N
    uboot学习之uboot启动流程简述
    [LeetCode]Palindrome Pairs
    [LeetCode]Gray Code
    快速排序 partition函数的所有版本比较
    Linked List Cycle && Linked List Cycle II
    Simplify Path leetcode
    Pow(x, n) leetcode
    Swap Nodes in Pairs leetcode
    Multiply Strings leetcode
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5364335.html
Copyright © 2011-2022 走看看