Datenelemente mit Vorlagenparametern hinzufügen / entfernen?

Betrachten Sie den folgenden Code:

template<bool AddMembers> class MyClass
{
    public:
        void myFunction();
        template<class = typename std::enable_if<AddMembers>::type> void addedFunction();

    protected:
        double myVariable;
        /* SOMETHING */ addedVariable;
};

In diesem Code der VorlagenparameterAddMembers Erlaube, der Klasse eine Funktion hinzuzufügen, wenn sie isttrue. Dazu verwenden wir einstd::enable_if.

Meine Frage ist: ist das gleiche möglich (vielleicht mit einem Trick) für Datenelemente variabel? so, dassMyClass<false> wird 1 Datenmitglied haben (myVariable) undMyClass<true> wird 2 Datenmitglieder haben (myVariable undaddedVariable)?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage