小编ttu*_*chi的帖子

使用不同的模板参数在列表项上调用参数化方法

我正在尝试存储和操作具有不同参数类型的模板类对象列表; 模板类有两个parametrised方法,一个返回参数类型和一个空隙一个接受它作为输入.

更具体地说,我有一个模板类,定义如下:

template<typename T>
class Test
{
public:
    virtual T a() = 0;
    virtual void b(T t) = 0;
};
Run Code Online (Sandbox Code Playgroud)

和它的不同规格,如:

class TestInt : public Test<int>
{
public:
    int a() {
        return 1;
    }
    void b(int t) {
        std::cout << t << std::endl;
    }
};

class TestString : public Test<std::string>
{
public:
    std::string a() {
        return "test";
    }
    void b(std::string t) {
        std::cout << t << std::endl;
    }
};
Run Code Online (Sandbox Code Playgroud)

我希望能够在一个列表中存储两者的不同对象TestIntTestString键入并循环调用一个方法作为另一个方法的输入,如:

for (auto it …
Run Code Online (Sandbox Code Playgroud)

c++ templates boost boost-any

5
推荐指数
1
解决办法
137
查看次数

标签 统计

boost ×1

boost-any ×1

c++ ×1

templates ×1