To pytanie przyszło mi do głowy, gdy miałem coś takiego
enum Folders {FA, FB, FC};
i chciałem utworzyć tablicę kontenerów dla każdego folderu:
ContainerClass*m_containers[3];
....
m_containers[FA] = ...; // etc.
(Korzystanie z map jest o wiele bardziej eleganckie w użyciu std::map<Folders, ContainerClass*> m_containers;:)
Ale wracając do mojego pierwotnego pytania: co jeśli nie chcę na stałe zakodować rozmiaru tablicy, czy jest sposób, aby dowiedzieć się, ile elementów znajduje się w folderach? (Bez polegania np. Na FCtym, że jest ostatnią pozycją na liście, co pozwoliłoby na coś takiego, ContainerClass*m_containers[FC+1]jeśli się nie mylę).
int(FA) | int(FB) | int (FC)jest również wartością prawną dla Folderszmiennej. Jeśli ustalasz rozmiar m_containerstak, aby każda Folderszmienna była prawidłowym indeksem, [FC+1]nie będzie wystarczająco duża.