LINUX.ORG.RU

История изменений

Исправление nikitos, (текущая версия) :

Еще одну штуку вспомнил, для скрещивания темплейтов с макросами, чтоб немного уменьшить количество боёлерплейта с switch, но сломать (возможно) голову сопровождающим:

https://en.wikipedia.org/wiki/Curiously_recurring_template_pattern

Примеры использования:

  1. https://github.com/colmap/colmap/blob/dev/src/base/camera_models.h см. макросы CAMERA_MODEL_DEFINITIONS + CAMERA_MODEL_CASES
  2. 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

Примеры использования:

  1. https://github.com/colmap/colmap/blob/dev/src/base/camera_models.h см. макросы CAMERA_MODEL_DEFINITIONS + CAMERA_MODEL_CASES
  2. https://github.com/colmap/colmap/blob/dev/src/mvs/patch_match_cuda.cu см. макрос CASE_WINDOW_STEP