zoukankan      html  css  js  c++  java
  • 代理类

    问题提出:由于C++具备继承的特性,若想使用一个容器(如数组)存储一系列的父类、子类对象,应该如何操作?

    实现难点:

      1.  基类数组:不能实现

      2.  基类指针数组(间接层):对管理内存不友好

    实在的解决方案:代理类

      1.  代理是对对象的拷贝,具备对象的一切操作,并且可以实现容器中装入父类、子类各种对象的功能。

      2.  实现实例

      

     Vehicle是被代理的类

      3.  代理类还要实现作用类似0指针的空代理(当没有代理的对象时,Vehile取NULL)

      4.  使用代码

      

    1 VehicelSurrogate vel[10] = {a, b, c}; // a是vehicle对象,b和c是vehicle的子类对象,vel[1] 拷贝了 b 并且可以实现 b 的功能,a和c同理

       5.  示例图:

      

  • 相关阅读:
    1265 四点共面
    1298 圆与三角形
    1264 线段相交
    1185 威佐夫游戏 V2
    1183 编辑距离
    1089 最长回文子串
    HTML5 boilerplate 笔记(转)
    Grunt上手指南(转)
    RequireJS 2.0初探
    RequireJS学习笔记
  • 原文地址:https://www.cnblogs.com/suui90/p/15224785.html
Copyright © 2011-2022 走看看