有没有人看过Andrei Alexandrescu在GoingNative2013中关于爆炸元组的讨论呢?
这是我不太关注的代码片段:
template <class F, class... Ts>
auto explode(F&& f, const tuple<Ts...>& t)
-> typename result_of<F(Ts...)>::type
{
return Expander<sizeof...(Ts),
typename result_of<F(Ts...)>::type,
F,
const tuple<Ts...>&>::expand(f, t);
}
Run Code Online (Sandbox Code Playgroud)
结果中的F(Ts ...)让我很烦恼.我的意思是:F不代表功能类型吗?我知道R(Ts ...)很好,但这里的R是一个返回类型,但是在R应该使用F的位置,那就是让我发疯的事情......
任何人都可以帮我理解奇怪的F(Ts ...)吗?
以下是Andrei Alexandrescu的演讲链接:http: //channel9.msdn.com/Events/GoingNative/2013/The-Way-of-the-Exploding-Tuple
使用以下命令bash:
python myscript.py filename_pattern*
Run Code Online (Sandbox Code Playgroud)
我sys.argv在两台Linux机器上有两个不同的:
sys.argv[1] = filename_pattern*sys.argv[1] = filename_pattern-2013-06-30注意:filename_pattern-2013-06-30是我当前目录中的文件.
我的一位同事告诉我那是邪恶的bash.但我检查bash在两台机器都是同一版本,我查了一下~/.bashrc,/etc/bashrc,/etc/profile.d/*.sh太.
任何人都可以指出两个相同版本的bash行为有何不同?