Это дополнительный вопрос к теме «Как применить концепцию к функции-члену в концепции и затем использовать ее?». Я сосредоточен не на том, как исправить этот код, а на понимании основного механизма.
Предположим следующий код (собранный на основе материалов @Wutz, @Jarod42 и @wohlstad):
p>
Пожалуйста, объясните, как и почему оператор преобразования типа, используемого в качестве аргумента для t.set в выражении require, имеет вид оценивается во время реализации концепции.
Пожалуйста, объясните, почему набор перегрузок Bazzz приводит к сбою сборки концепции
Это дополнительный вопрос к теме «Как применить концепцию к функции-члену в концепции и затем использовать ее?». Я сосредоточен не на том, как исправить этот код, а на понимании основного механизма. Предположим следующий код (собранный на основе материалов @Wutz, @Jarod42 и @wohlstad): p> [code]#include #include
// Why do we have a build failure here? // static_assert(has_set); [/code] [list] [*]Пожалуйста, объясните, как и почему оператор преобразования типа, используемого в качестве аргумента для t.set в выражении require, имеет вид оценивается во время реализации концепции. [*]Пожалуйста, объясните, почему набор перегрузок Bazzz приводит к сбою сборки концепции [/list]