Конструктор шаблона не должен участвовать в разрешении перегрузки для отдельного аргумента типа класса включения
Конструктор шаблона не должен участвовать в разрешении перегрузки для отдельного аргумента типа класса включения.
Конструктор шаблона может привести к беспорядку, о которой копии или перемещаются, конструктор вызывается в копии или перемещении. Например:
Неявный конструктор может быть вызван, когда вы ожидаете, что конструктор шаблона будет использоваться. Неявный конструктор копии или перемещения существует в классе, потому что конструктор шаблона не предотвращает его определение.
Конструктор шаблона может быть вызван, когда вы ожидаете, что явный конструктор будет использоваться. Конструктор шаблона может лучшее соответствие, чем явный конструктор, когда перегрузка разрешена.
Средство проверки повышает нарушение когда:
Класс содержит копию шаблона или конструктора перемещения, но по крайней мере одна копия или перемещение используют неявного конструктора в классе.
Нарушение показывают на конструкторе шаблона. События, сопоставленные результатом, показывают копию или перемещение, где неявный конструктор вызывается.
Класс содержит копию шаблона или конструктора перемещения и явного конструктора, но по крайней мере одна копия или перемещение используют конструктора шаблона.
Нарушение показывают на конструкторе шаблона. События, сопоставленные результатом, показывают копию или перемещение, где конструктор шаблона вызывается и определение явного конструктора.
Если вы ожидаете нарушение правила, но не видите его, относитесь, чтобы Диагностировать, Почему Кодирующие Стандартные Нарушения Не Появляются как ожидалось.
Группа: шаблоны |
Категория: необходимый, автоматизированный |