当前位置:  开发笔记 > 编程语言 > 正文

语言功能,可将功能应用于参数包的每个元素

如何解决《语言功能,可将功能应用于参数包的每个元素》经验,为你挑选了1个好方法。

有谁知道,如果有关于c ++语言功能的标准建议,可以让我取代它(感谢Yakk):

template
void bar(const ARGS& ... args) {        
    auto t = { (foo(args),0)... };
    (void) t; //<- prevent warning about unused variable
}

像这样更自然:

template
void bar(const ARGS& ... args) {        
    foo(args)...;
}

foo 例如函数,函数模板和/或它们的重载集合,它们的返回类型可能是无效的(或者通常我不关心)。

顺便说一句,如果有人知道用c ++ 14编写的更简洁的方法,可以随意分享,但是我认为,这个问题已经解决了



1> T.C...:

将折叠表达式与逗号运算符一起使用:

( void(foo(args)) , ...);

在最近的邮件中,我没有看到任何进一步更改此设置的建议。

推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有