LINUX.ORG.RU

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

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

ты просто пишешь ахинеальную бредятину — только ради того что бы хоть чото написать…

Какая ирония.

ясно — а как же тогда что если ты не подставишь тип не удовлетворяющий концепту — выдаст ошибку???

Ошибка никак не связана с несоответствием типа концепту. Она связана исключительно с тем, что overload set оказался пустым. Лапша, вываливаемая компилятором в этом случае – это список кандидатов и причин, по которым они не подошли.

Вот тебе список проблем, которые возникают при использовании концептов не по назначению, а для «предоставления правил»:

  1. Компилятор выдает ошибку, которая уводит пользователя от реальной причины;
  2. Нет человекочитаемого пояснения того, что пошло не так;
  3. Самое важное – overload set может быть не пустым, и тогда, когда ты будешь ожидать ошибку компиляции из-за несоответствия типа концепту, все будет молча компилироваться и работать – но не так, как ты хочешь.

Исходная версия Siborgium, :

ты просто пишешь ахинеальную бредятину — только ради того что бы хоть чото написать…

Какая ирония.

ясно — а как же тогда что если ты не подставишь тип не удовлетворяющий концепту — выдаст ошибку???

Ошибка никак не связана с несоответствием типа концепту. Она связана исключительно с тем, что overload set оказался пустым. Лапша, вываливаемая компилятором в этом случае – это список кандидатов и причин, по которым они не подошли.

  1. Компилятор выдает ошибку, которая уводит пользователя от реальной причины;
  2. Нет человекочитаемого пояснения того, что пошло не так;
  3. Самое важное – overload set может быть не пустым, и тогда, когда ты будешь ожидать ошибку компиляции из-за несоответствия типа концепту, все будет молча компилироваться и работать – но не так, как ты хочешь.