智能指針:shared_ptr
1、一個局部的shared_ptr 作為返回值過程:當shared_ptr 被創建的時候,自身的引用計數 +1,當前引用計數為 1 , 按值返回以后 引用計數 + 1 (拷貝構造函數,就是可以理解為基礎類型的拷貝),當前引用計數為 2 ,函數執行完成之后,申請的shared_ptr析構(銷毀變量),引用計數 -1 ,此時復制出來的shared_ptr 引用計數變為 1 ;
2、不管是基礎類型還是 對象 ,作為局部變量時都不可以按引用返回,原因(引用的概念);
3、帶返回值的函數的返回過程:先復制,在銷毀 ;
4、當shared_ptr 按引用作為參數傳遞時,自身不會進行引用 + 1 計數,引用以后的自身計數還是引用之前的計數;