Bonjour!
Dans une classe template possédant un std::bitset, j'essaie de surcharger l'opérateur [] afin de modifier la valeur du bitset. C'est-à-dire de pouvoir faire:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
MyClass<8> foo;
foo[7]=0;
ce qui aura pour effet de modifier la 7ème valeur du bitset.

L'opérateur[] de bitset renvoi un std::bitset::reference, et j'aimerai pouvoir le renvoyer aussi.

Je me demande donc si il est possible de faire un truc du genre:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
template <size_t n>
bitset::reference MyClass<n>::operator[] (size_t i)
{
    if(i<n && i>=0)
    {
        return m_content[i];
    }
    else
    {
        return NULL;
    }
}
ou si la classe reference ne peut être utilisée.

Merci pour vos lumières!

cordialement,

Simac