为什么我在这个模板函数中得到 bugprone-use-after-move?

问题描述

Clang 静态分析器报告以下模板函数中参数 t 的错误易使用后移动。首先,帮助我理解为什么,我根本看不到它正在被使用。其次,如果您能帮助我提出解决方法的建议,我将不胜感激。

template <class T,class Tuple,std::size_t... I>
constexpr static T unwrapImpl(Tuple&& t,std::index_sequence<I...>)
{
    static_assert((isSameOrWrapped<T,Tuple,I>() && ... ),"missmatching types");

    return T(static_cast<std::tuple_element_t<I,T>&&>(std::get<I>(std::move(t)))...);
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)