使用新的 C++ 协程,是否可以定义一个协程类,我可以使用它从函数中产生而不返回值?或者yield总是必须返回一些东西?我只对产生的功能感兴趣,而不是产生的值。
我想要这个:
Coro Fn() {
if (...) co_yield;
co_return;
}
不是这个:
Coro Fn() {
if (...) co_yield dummyValue;
co_return dymmyValue;
}
不,但您不需要使用产量值。直接忽略它。
例如,产生一条消息:
co_yield "ignore";
并将其添加到您的promise_type中:
auto yield_value(const char* msg) {
return std::suspend_always{};
}