跳转至

ev-drogon-remove-cvref-coroutine-003

字段 值
项目 drogonframework/drogon
固定 commit 3aae769cc405
路径 lib/inc/drogon/utils/coroutine.h
行段 L858-L860
特性 std::remove_cvref 与 std::type_identity
许可证 MIT
代码来源 项目源码
级别 manual
审核 zyuhao7 @ 2026-10-26
测试代码 否
发现方式 manual

用法

用 std::remove_cvref_t 把成员表达式还原成裸 tuple 类型

为什么典型

decltype(results_) 是带引用的成员访问表达式;先剥掉引用与 cv,才能用 tuple_element_t 取第 Idx 个任务结果类型。

摘录

                using TaskType = std::tuple_element_t<
                    Idx,
                    std::remove_cvref_t<decltype(results_)>>;

备注

生产头文件;协程 WhenAll 等待器中的类型计算。

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