#include #include #include using namespace Upp; using namespace std; //#define TEST_STL //#define TEST_UPP struct Foo : Moveable { int a, b; Foo(int a, int b) : a(a), b(b) {} Foo() {} }; CONSOLE_APP_MAIN { { std::string key = "key"; vector fa; fa.push_back(10); map fb; fb[key] = 10; #ifdef TEST_STL vector x; x.push_back(Foo(1, 2)); map map1; map1[20].a = 10; map map2; map2[key].a = 10; #endif } { String key = "key"; Vector fa; fa.Add(10); VectorMap fb; fb.GetAdd(key) = 10; #ifdef TEST_UPP Vector x; x.Add(Foo(1, 2)); VectorMap map1; map1.GetAdd(20).a = 10; VectorMap map2; map2.GetAdd(key).a = 10; #endif } }