Dodaj / Usuń członków danych z parametrami szablonu?

Rozważ następujący kod:

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

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

W tym kodzie parametr szablonuAddMembers pozwala dodać funkcję do klasy, gdy jesttrue. Aby to zrobić, używamystd::enable_if.

Moje pytanie brzmi: czy to samo jest możliwe (może za pomocą podstępu) dla zmiennej członków danych? (w taki sposóbMyClass<false> będzie miał 1 członka danych (myVariable) iMyClass<true> będzie miał 2 członków danych (myVariable iaddedVariable)?

questionAnswers(2)

yourAnswerToTheQuestion