首页 > 包扩展、转发参数包的一个概念问题

包扩展、转发参数包的一个概念问题

扩展一个包就是将它分解为构成的元素,对每个元素应用模式,获得扩展后的列表。


template<typename... Args>
void fun(Args&&... args)
{
    //work的实参既扩展Args又扩展args
    word(std::forward<Args>(args)...);
}

关于例子中的注释部分,我觉得std::forward<Args>(args)...只扩展了args吧,哪里扩展了Args?仅仅是因为< >里有Args?


std::forward<Args>(args)...
<>里面是type pack,后面有...,这就是扩展,语法就这么规定的。

【热门文章】
【热门文章】