gpt4 book ai didi

c++ - 这不能用可变参数模板参数包来完成吗?

转载 作者:太空狗 更新时间:2023-10-29 20:03:54 25 4
gpt4 key购买 nike

<分区>

在下面的代码中,我在初始化列表中展开参数包,同时在每个元素上调用函数 DoSomethingReturnInt。在此之下,我尝试做一些看似类似于尝试在每个元素上调用 DoSomething 的事情,但出现编译器错误。这是根本不可能的,还是我只需要稍微修改一下就可以做到这一点?在我看来,这样的事情应该是可能的。

template <class T>
int DoSomethingReturnInt(T&& t)
{}

template <class T>
void DoSomething(T&& t)
{}

template <class... T>
void variadic(T&&... args)
{
int arr[] = { DoSomethingReturnInt(args)... }; //Compiles OK
DoSomething(args)...; //error: parameter packs not expanded with '...'
}

int main()
{
variadic("Testing", "one", 2.0, 3);
}

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com