小编Thi*_*ner的帖子

如何在保持我的实现者类私有的同时在C++中使用可变参数模板?

#include <cstdio>

class builtin_pack
{
    long v[4];
public:
    builtin_pack ( long v1, long v2, long v3, long v4 ) : v{v1, v2, v3, v4} {}
    void builtin_op()
    {
        printf ( "%lx,%lx,%lx,%lx\n", v[0], v[1], v[2], v[3] );
    };
    template<typename Func, typename... Targs>
    void builtin_apply ( Func f, Targs ... t )
    {
        for ( int i = 0; i < 4; i++ )
        {
            v[i] = f ( t.v[i]... );
        }
    }
};

class pack : builtin_pack
{
public:
    pack ( …
Run Code Online (Sandbox Code Playgroud)

c++ templates variadic-templates c++11

7
推荐指数
1
解决办法
261
查看次数

标签 统计

c++ ×1

c++11 ×1

templates ×1

variadic-templates ×1