public: using Base::member;
基底クラスから非公開で継承する場合、その (非公開の) メンバーを継承クラス内で公開すると言えます。これを拡張してすべてのメンバーを一度に取得する方法はありますか? これが必要なコンテキストは、コードの重複を避けるために使用している CTRP 設定です。
例:
struct Base {
int foo();
void bar();
// ...
}
struct A : private Base {
using Base::*; // not correct syntax
// should have the effect of
using Base::foo;
using Base::bar;
// ...
};
Base のパブリック メンバーのみを選択でき、保護されたメンバーやプライベート メンバーを選択できなかった場合はさらに良いでしょう。これは単なるボーナスになります。