ВходНаше всё Теги codebook PARTS Поиск Опросы Закон Пятница
27 мая
1164773 Топик полностью
VladislavS. (15.01.2022 08:26, просмотров: 89) ответил RxTx на Любую систему тестирования. Разницы никакой, поскольку тестируется конечный выполняемый бинарный код полученный из шаблона. Сами по себе шаблоны смысла тестировать нет.
Э не... В шаблоне могут быть алгоритмы работы с типами, влияющими на результат инстанцирования. Эти алгоритмы тоже надо как-то проверять. Сейчас это делается руками. Проверка инстанцированного кода это уже прикладная задача. Но ведь библиотечный код, состоящий из шаблонных классов, тоже надо проверять. 

Насчёт проверки синтаксиса в шаблонах. Он конечно не идеален. Если алгоритм подразумевает сравнение двух объектов, а мы подадим на вход несравниваемый объект, то конечно получим ошибку. Или обратимся к методу или данным, которых в объекте нет. Тут нам на помощь спешат концепты, они позволяют наложить разумные ограничения. Но уж точно, в отличии от препроцессора, код будет проверен на синтаксис языка 100% и в результате инстанциации лишние скобки и точки с запятой изниоткуда не выпрыгнут.