C++11??????????????
???????????? ???????[ 2016/8/15 10:47:09 ] ??????????? .NET
????unique_ptr ?????????????
???????????????????????????????????????unique_ptr????????????????????????????????????????????????????????????е??
unique_ptr<int> clone(int p)
{
return unique_ptr<int>(new int(p));
}
void process_unique_ptr(unique_ptr<int> up)
{
cout<<"process unique ptr: "<<*up<<endl;
}
cout<<"test unique_ptr parameter and return value:"<<endl;
auto up5 = clone(1024);
cout<<"up5: "<<*up5<<endl;
process_unique_ptr(move(up5));
//cout<<"up5 after process: "<<*up5<<endl; // would cause segmentfault
?????????std::move????????????????????^_^
????unique_ptr deleter
????unique_ptr???????????deleter????shared_ptr??????????????????????????deleter?????????????????decltype????????????д???????鷳??
????cout<<"test unique_ptr deleter:"<<endl;
????int *p9 = new int(1024);
????unique_ptr<int?? decltype(print_at_delete) *> up6(p9?? print_at_delete);
????unique_ptr<int> up7(new int(1025));
????up6.reset(up7.release());
????weak_ptr
????weak_ptr????shared_ptr?????á??????????shared_ptr???????????????????????????ü??????????п??????weak_ptr??????????????????????????????????weak_ptr?????lock???????????????????????shared_ptr??
????cout<<"test weak_ptr basic usage:"<<endl;
????auto p10 = make_shared<int>(1024);
????weak_ptr<int> wp1(p10);
????cout<<"p10 use_count: "<<p10.use_count()<<endl;
????//p10.reset(new int(1025)); // this will cause wp1.lock() return a false obj
????shared_ptr<int> p11 = wp1.lock();
????if(p11) cout<<"wp1: "<<*p11<<" use count: "<<p11.use_count()<<endl;
???????
????1??shared_ptr???????ü????????????????????
????2??shared_ptr??????????new??????????????г???????????????????new???????????????shared_ptr??
????3??????????new??????????????shared_ptr?????????????????????????????檔
????4??shared_ptr???????reset????????????????????????????????ü????????
????5????????????deleter????????????shared_ptr??????????á?
????6??unique_ptr????????????????????
????7?????????unique_ptr???п?????????????????????????release??????unique_ptr????????????
????8??unique_ptr????????????????????????á?
????9??unique_ptr???????????deleter??????????????????deleter???????
????10??weak_ptr????shared_ptr?????á??????????shared_ptr???????????????????????????ü?????
????11??weak_ptr?????lock???????????????????????shared_ptr??
???????????????????????漰???????????????????SPASVOС??(021-61079698-8054)?????????????????????????
??????
??C++????????????C++ lvalue??rvalueC++11????????C++???????????????C++?е?????????????????C++?????????C++???Windows????λ??C/C++???????????????????JAVA??C??C++??????????c++??python???????????????????????????????C++???????C++?е????????C++????????????????C++ ???????????????C++?????????????????????C++????????????

???·???
??????????????????
2023/3/23 14:23:39???д?ò??????????
2023/3/22 16:17:39????????????????????Щ??
2022/6/14 16:14:27??????????????????????????
2021/10/18 15:37:44???????????????
2021/9/17 15:19:29???·???????·
2021/9/14 15:42:25?????????????
2021/5/28 17:25:47??????APP??????????
2021/5/8 17:01:11????????
?????????App Bug???????????????????????Jmeter?????????QC??????APP????????????????app?????е????????jenkins+testng+ant+webdriver??????????????JMeter????HTTP???????Selenium 2.0 WebDriver ??????