История изменений
Исправление nikitos, (текущая версия) :
Еще одну штуку вспомнил, для скрещивания темплейтов с макросами, чтоб немного уменьшить количество боёлерплейта с switch, но сломать (возможно) голову сопровождающим:
https://en.wikipedia.org/wiki/Curiously_recurring_template_pattern
Примеры использования:
- https://github.com/colmap/colmap/blob/dev/src/base/camera_models.h см. макросы CAMERA_MODEL_DEFINITIONS + CAMERA_MODEL_CASES
- https://github.com/colmap/colmap/blob/dev/src/mvs/patch_match_cuda.cu см. макрос CASE_WINDOW_STEP
Исходная версия nikitos, :
Еще одну штуку вспомнил, для скрещивания темплейтов с макросами, чтоб немного уменьшить количество боёлерплейта, но сломать (возможно) голову сопровождающим:
https://en.wikipedia.org/wiki/Curiously_recurring_template_pattern
Примеры использования:
- https://github.com/colmap/colmap/blob/dev/src/base/camera_models.h см. макросы CAMERA_MODEL_DEFINITIONS + CAMERA_MODEL_CASES
- https://github.com/colmap/colmap/blob/dev/src/mvs/patch_match_cuda.cu см. макрос CASE_WINDOW_STEP