#include <stdio.h>
#include <stdlib.h>
#include <iostream>
class Test
{
public:
int a;
Test( int x )
{
std::cout << "Test(" << x << ")\n";
}
Test(Test&&)
{
std::cout << "Test(Test&&)\n";
}
};
void func( Test &&test )
{
std::cout << "we have && " << test.a << "\n";
}
void func( const Test &test )
{
std::cout << "we have " << test.a << "\n";
}
int main()
{
func( Test( 20 ) );
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgVGVzdAp7CnB1YmxpYzoKCglpbnQgYTsKCVRlc3QoIGludCB4ICkKCXsKCQlzdGQ6OmNvdXQgPDwgIlRlc3QoIiA8PCB4IDw8ICIpXG4iOwoJfQoKCVRlc3QoVGVzdCYmKQoJewoJCXN0ZDo6Y291dCA8PCAiVGVzdChUZXN0JiYpXG4iOwoJfQp9OwoKdm9pZCBmdW5jKCBUZXN0ICYmdGVzdCApCnsKCXN0ZDo6Y291dCA8PCAid2UgaGF2ZSAmJiAiIDw8IHRlc3QuYSA8PCAiXG4iOwp9Cgp2b2lkIGZ1bmMoIGNvbnN0IFRlc3QgJnRlc3QgKQp7CglzdGQ6OmNvdXQgPDwgIndlIGhhdmUgIiA8PCB0ZXN0LmEgPDwgIlxuIjsKfQoKaW50IG1haW4oKQp7CglmdW5jKCBUZXN0KCAyMCApICk7CglyZXR1cm4gMDsKfQo=