【问题标题】:How to create templatized wrapper class in C++如何在 C++ 中创建模板化包装类
【发布时间】:2020-11-15 16:00:02
【问题描述】:

我正在从项目的许多地方调用一个函数。唯一的区别是其中一个参数的数据类型不同。

我被要求创建一个模板化的包装类。有人可以帮我怎么做吗?

我正在从不同的地方调用以下函数。这里调用这个函数时,第二个参数(f_strCallid)可能是string、int、unsigned long等。

std::shared_ptr<CCallListImpl> CCallListImpl::handleCallCollectionEvents(Events f_eCallEvent, const std::string& f_strCallid)
{
    shared_ptr<CCallListImpl> l_hObj = nullptr;

    return l_hObj;
}

提前致谢。

【问题讨论】:

    标签: c++ c++11 c++14


    【解决方案1】:

    根据您的规范,它应该是这样的:

    template <typename T>
    std::shared_ptr<CCallListImpl>
    CCallListImpl::handleCallCollectionEvents(Events f_eCallEvent, const T& f_strCallid)
    {
        shared_ptr<CCallListImpl> l_hObj = nullptr;
    
        return l_hObj;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-29
      • 2010-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-28
      • 2019-05-28
      • 1970-01-01
      相关资源
      最近更新 更多