在这个基础上,如果面对的user不太行的,可以把handler_t的concept constrain加上去,变成
template<class handler_t>
concept as_task = requires(handler_t f)
{
f();
}
template <as_task handler_t>
.....
七七八八多这么代码,无非就是让user一旦用错在编译时就能报错。另外,在copilot的加持下,这些代码看起来很多,但是事实上大多数情况,你只需要写 //....的注释,很多体力活copilot自动补全
--
FROM 115.193.181.*