跳转至

ev-drogon-nodiscard-awaiter-001

字段 值
项目 drogonframework/drogon
固定 commit 3aae769cc405
路径 orm_lib/inc/drogon/orm/DbClient.h
行段 L59-L64
特性 标准属性
许可证 MIT
代码来源 项目源码
级别 manual
审核 zyuhao7 @ 2026-10-26
测试代码 否
发现方式 manual

用法

在协程 awaiter 类型上标注 [[nodiscard]]

为什么典型

awaiter 对象必须被 co_await 消费;把 [[nodiscard]] 放在类型声明上,丢弃临时对象时编译器会告警。

摘录

struct [[nodiscard]] SqlAwaiter : public CallbackAwaiter<Result>
{
    explicit SqlAwaiter(internal::SqlBinder &&binder)
        : binder_(std::move(binder))
    {
    }

备注

生产路径;协程 awaiter 忘记 co_await 时不应静默丢弃。

查看固定 commit 源码 · 返回证据索引