Eine Bool-Referenz aus std :: vector <bool> @ hol

Ich weiß, dass es eine schlechte Angewohnheit ist, aber ich würde gerne einen Workaround oder einen Hack für dieses Problem kennen. Ich habe eine Klasse wie diese:

template <class T>
class A : std::vector<T> {
  T& operator()(int index) { // returns a _reference_ to an object
    return this->operator[](index);
  }
};

Es ist möglich, Dinge wie diese zu tun:

A<int> a{1,2,3,4};
a(3) = 10;

Aber es funktioniert nicht mehr, wenn jemand @ verwend bool als Vorlagenparameter

A<bool> a{true, false, true};
std::cout << a(0) << std::endl; // not possible
if (a(1)) { /* something */ }   // not possible

std::vector<bool> ist eine spezialisierte Version von vector http: //www.cplusplus.com/reference/vector/vector-bool) was solche Dinge nicht erlaubt.

Gibt es eine Möglichkeit, eine Referenz der booleschen Variablen aus std :: Vector zu erhalten? Oder irgendeine andere Lösung?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage