zoukankan      html  css  js  c++  java
  • 管理模板实例

    实际工作中,C++的高级语法特性很少用。以简单为主,模板啥的很少。
    记录下所不熟悉的问题。

    问题来源:
           想随时查看所有对象池的实例的详情。


    对象池
    template<class T>
    class poolmgr
    {
    }

    记录所有此对象池的实例
    class poolmeminfo
    {
    //增加,移除接口
    private:
        std::list<poolmgr*> m_infolist;
    }

    问题来了。模板参数T问题。。。

    询问了一个网友,解决方案是通过基类,当然所需要的接口定义为虚函数

    如下:
    class poolmgrbase
    {
    public:
        poolmgrbase(){}
        virtual ~poolmgrbase(){}
        virtual void writeinfotofile (FILE *fp) = 0;
    };

    template<class T>
    class poolmgr:public poolmgrbase
    {
    }


    class poolmeminfo
    {
    //增加,移除接口
    private:
        std::list<poolmgrbase*> m_infolist;
    };

    至此Ok。
    话说要是真不知道杂弄,都打算换C的对象池了。。。

  • 相关阅读:
    宠物的生长(多态)
    程序员和程序狗
    表彰优秀学生(多态)
    [leetcode] Anagrams
    [leetcode] Add Two Numbers
    [leetcode] Add Binary
    [leetcode] 4Sum
    [leetcode] 3Sum Closest
    [leetcode] 3Sum
    函数成员修饰之私有方式
  • 原文地址:https://www.cnblogs.com/lcinx/p/10570483.html
Copyright © 2011-2022 走看看