管理模板实例

博客记录了在实际工作中遇到的C++问题。想随时查看所有对象池实例详情时,遇到模板参数T的问题。通过询问网友,采用基类并将所需接口定义为虚函数的方案解决了问题,若无法解决甚至考虑换用C的对象池。

实际工作中,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的对象池了。。。

转载于:https://www.cnblogs.com/lcinx/p/10570483.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值