私は、重要な部分を公に公開することなく、私が整理しようとしているパズルを持っています。少なくとも、私はC2248の線に沿って、エラーを取得しています、のMicrosoft Visual C++ 2015コンパイラを使用してC++継承アクセス保護パズルを並べ替える
template<class Feature>
struct Fixture {
private:
Feature f;
protected:
Fixture() : f() {}
public:
Feature* const get() { return &f; }
};
struct MyFeature {
protected:
MyFeature() {}
};
struct FixtureHost : public Fixture<MyFeature> {
};
、 'MyFeature :: MyFeatureは':クラスのMyFeature 'で宣言protectedメンバにアクセスすることはできません。
フィクスチャへのアクセスとフィクスチャアクセスを保護したいと考えています。本当に、FixtureHost、または友情サークル内のものだけがどちらかをインスタンス化することが許可されるべきです。
しかしこれはちょっと古いC++コンパイラにはあまりにも多いようですね。コンストラクタを公に公開しなければならない場合は、それを避けてください。
[友だち](http://en.cppreference.com/w/cpp/language/friend)? – happydave
'友人の什器; –
George
投稿してください[MCVE](http://stackoverflow.com/help/mcve) –