Для подобной примитивной задачи мощь языка C++ со своими классами и наследования - как собаке пятая нога.
Чтобы было понятно почему так, распишите хотя бы для себя как вы будете использовать весь это колхоз непосредственно в коде.
Цитата(С дуба рухнул @ Aug 6 2018, 20:51)
Не знаете как создать константную расшаренную таблицу на все экземпляры и потомков,
Если знаете как это делать, то зачем тут пишите?
Цитата
а советуете книжку почитать.
Не советую. Но если уж заговорили про книжки, то
рекомендую эту.
От нее горааааздо больше пользе, чем от той, который вы привели выше.
Постараюсь еще раз, но в этот раз, учитывая обстоятельства, уже "на пальцах":
Все данные, которые должны быть доступны ВНУТРИ класса, должны находится внутри класса и только внутри (под внутри имеется ввиду файл сpp).
Если это - куча константных данных, то внутри соотв. cpp файла (const или constexpr), о чем я писал в самом начале.
Доступ к этим данным должен осуществляться ЧЕРЕЗ соотв. методу, но напрямую - НИКОГДА.
Размещать их внутри объявления класса - НЕПРАВИЛЬНО. И соотв. также неправильно давать возможность напрямую к ним обращаться извне класса.
Вообще, объявление класса (соотв. файл hpp) должно иметь минимально возможный размер, иначе сильно ухудшается читаемость и сопровождение.
Т.е. в идеале объявление классов должно состоять ТОЛЬКО из методов и private (реже protected) полей, которые, разумеется не могу быть const.
Поля ни в коем случае НЕ ДОЛЖНЫ быть static.