Что считается «хорошей практикой» при обработке нежелательных типов данных для шаблонных классов?
Скажем, у нас есть шаблонный класс, который выполняет умножение чисел, но файл драйвера для класса объявляет экземпляркласса с типом string
.
Мне дали аргумент, что это «личная проблема» для любого, кто создает файл драйвера, и что все, что нужно сделать с вашей стороны, является правильнымПролог функции в заголовочных файлах / файлах реализации.
Мне интересно, существует ли общая практика, используемая с шаблонами для решения этой проблемы.Проверяете ли вы свои типы в классе перед обработкой (я полагаю, в некоторой степени это противоречит цели шаблона), или вы определяете поведение для определенных типов (хотя это также кажется поражением цели)?
Или вы просто правильно документируете свой код и позволяете программисту, использующему ваш класс, принять меры предосторожности?