std::get<C++11多线程库>(07):向线程函数传递参数(5)

 1 //! [3] ====================== *引用/指针 语义下变量地址情况回顾*==================
 2 int main(int argc, char *argv[]){
 3 
 4     int a = 10;     //0x4ffe28
 5     int &refa = a;  //0x4ffe28
 6     int *pa = &a;   //0x4ffe28
 7     return 0;
 8 }
 9 //分析
10 /*
11     同一变量,它的引用,它的指针, 三者的地址全部相同,都是指向同一地址空间。
12 */
13 //! [3]
 1 //! [4] ====================== * 问-思考-3 *==================
 2 //分析
 3 /*
 4     同一变量,它的右值引用,二者的地址相同,都是指向同一地址空间。
 5 */
 6 int main(int argc, char *argv[]){
 7 
 8     int a = 10;     //0x53fe64
 9     int && rrefa = std::move(a);  //0x53fe64
10 
11     a = 20;
12     std::cout<<"a="<<a<<";   rrefa="<<rrefa<<std::endl;
13 
14     rrefa = 30;
15     std::cout<<"a="<<a<<";   rrefa="<<rrefa<<std::endl;
16 
17     std::cout<<"...lucky bear..."<<std::endl;
18     return 0;
19 }
20 //打印输出:
21 /*
22 a=20;   rrefa=20
23 a=30;   rrefa=30
24 ...lucky bear...
25 */
26 
27 
28 //! [4]

std::get<C++11多线程库~线程管理>(08):转移线程所有权(1)

原创文章, 转载请注明出处!

原文地址:https://www.cnblogs.com/azbane/p/15335087.html