小编ale*_*dia的帖子

调用父构造函数时如何避免模板参数上的样板

所以假设我有一个包含很多模板参数的类,其中一个是使用CRTP的派生类:

template <typename Derived, typename A, typename B, typename C, typename D>
class BaseFoo  {
public:
    BaseFoo(A& a) {}
};
Run Code Online (Sandbox Code Playgroud)

我想继承它:

class DerivedFoo : public BaseFoo<DerivedFoo, Bc, Cc, Dc, Ec> {
public:
    DerivedFoo(A& a) : BaseFoo<DerivedFoo, Bc, Cc, Dc, Ec>(a) {}
};
Run Code Online (Sandbox Code Playgroud)

是否有任何技巧可以避免所有明确的模板参数提及?

如果我仍然需要声明Derived为模板参数,那就没关系了.

c++ templates boilerplate crtp

4
推荐指数
2
解决办法
124
查看次数

标签 统计

boilerplate ×1

c++ ×1

crtp ×1

templates ×1