Ни для кого не секрет, что С++, являясь языком общего назначения, а не ориентированным на определенную предметную область, во многих аспектах содержит методы лишь начального, базового уровня. В частности, не нашедшей должного отражения в синтаксисе языка является тема динамически масштабируемых многомерных массивов. Идея внести в программу двумерный масштабируемый массив вызовет у программиста тревогу, трехмерный — раздражение, а при мысли о четырехмерных и прочих n-мерных массивах программист С++, скорее всего, посоветует заказчику проекта ориентироваться на другой язык программирования.
Однако, не все настолько мрачно. Хорошая новость заключается в том, что рекурсивное наследование шаблонов и перегрузка operator[] могут позволить изготовить класс, поддерживающий n-мерные массивы с возможностью их масштабирования, и всего того, что пожелает разработчик.
Читать дальше...

@темы: Трюки с шаблонами