这里到底发生了什么?为什么这是一个错误?
void f(int &&);
int && i = 5;
f(i);
Run Code Online (Sandbox Code Playgroud)
这不是有点违反直觉吗?
我希望i
是一个右值引用,所以能够传递给它f()
.但我得到一个错误;
没有任何已知的转化率从
int
至int &&
所以我猜i
在申报后不是左值参考?
我在Pig中有这个代码(win,request和response只是直接从filesystem加载的表):
win_request = JOIN win BY bid_id, request BY bid_id;
win_request_response = JOIN win_request BY win.bid_id, response BY bid_id;
win_group = GROUP win_request_response BY (win.campaign_id);
win_count = FOREACH win_group GENERATE group, SUM(win.bid_price);
Run Code Online (Sandbox Code Playgroud)
基本上我想在加入和分组后总结bid_price,但是我收到一个错误:
Could not infer the matching function for org.apache.pig.builtin.SUM as multiple or none of them fit. Please use an explicit cast.
Run Code Online (Sandbox Code Playgroud)
我的猜测是我没有正确指出win.bid_price
.
看到这张图片后:http: //2.bp.blogspot.com/_T-uXeKcGTnM/TIdoKBGwk9I/AAAAAAAABcs/CLW3_cRlN78/s1600/tumblr_kxovt0VLZy1qappj8.png 我想知道是否存在将SQL查询转换为MongoDB map/reduce查询模型的工具? ?
在C++ 11中,如果我尝试这样做:
int x = 5;
int && y = x;
Run Code Online (Sandbox Code Playgroud)
它将无法编译,错误告诉r值引用无法绑定到左值.
但是,如果我这样做:
int x = 5;
auto && y = x;
Run Code Online (Sandbox Code Playgroud)
它编译没有错误.为什么会这样?我试图获得类型y
但typeid()
删除了引用属性.是auto &&
自动折叠到一个&
或&&
取决于分配的内容?