Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
позволяют достаточно гибко обнаруживать наличие методов, как подходящих, так и строго соответствующих заданной сигнатуре
скорее всего - static_assert() в библиотеках для более удобочитаемых сообщений об ошибках. ну или общие библиотеки которые могут вызывать возможно по разному поименованные схожие методы. ну к примеру, есть классы с clear() и Clear() в двух разных библиотеках, а нам надо шаблон который будет работать с любой из них.
если у тебя в коде какая то заглушка которая кидает ошибку то ты что то сделал не так
Например, вы делаете универсальный метод который будет сериализовать переданную сущность в строкуДля такого метода подобные приёмы не нужны. Более того они вредны. Вместо того что бы сделать отдельные шаблоны serialize для каждого исторического пласта, вы хотите всё запихать в метод который должен учесть всё накопленную историю, а по возможности и будущую.
то вы об этом узнаете при прогоне юнит-тестовЭто в идеале да. Но на практике скорее всего пока не наступите не узнаете.
Обнаружение наличия функциональности в C++ на этапе компиляции