Это своего рода дополнительный вопрос к вопросу о том, как определить, что функция шаблона должна налагать более строгую концепцию.
У меня есть код, который выглядит следующим образом:
Код: Выделить всё
#include
template
auto compare(Iter i1, Iter i2)
{
return i1 < i2;
}
Тогда я понимаю, что могу заменить меньше чем на не равно:
Код: Выделить всё
template
auto compare(Iter i1, Iter i2)
{
return i1 != i2;
}
Теперь концептуальное ограничение можно понизить до уровня front_iterator. Есть ли способ помочь мне обнаружить это, кроме тщательного анализа кода?
Подробнее здесь:
https://stackoverflow.com/questions/786 ... ct-concept