今天就跟大家聊聊有關(guān)C++11中怎么利用移動類對象代替拷貝類對象,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
創(chuàng)新互聯(lián) - 成都移動云計算中心,四川服務(wù)器租用,成都服務(wù)器租用,四川網(wǎng)通托管,綿陽服務(wù)器托管,德陽服務(wù)器托管,遂寧服務(wù)器托管,綿陽服務(wù)器托管,四川云主機(jī),成都云主機(jī),西南云主機(jī),成都移動云計算中心,西南服務(wù)器托管,四川/成都大帶寬,機(jī)柜大帶寬、租用·托管,四川老牌IDC服務(wù)商
string類是C++標(biāo)準(zhǔn)庫中一個很重要的類,使用非常方便。但是它存在一個問
題:無論是否需要,拷貝構(gòu)造函數(shù)和賦值運算符都會生成文字列的拷貝。
C++11中引入了右值引用和移動的概念,使得程序員可以在構(gòu)造,賦值的的時候可以選擇拷貝還是移動對象,從而大幅度提高程序運行的效率。
示例
代碼分別使用string的拷貝構(gòu)造函數(shù),賦值運算符的拷貝版本和移動版本進(jìn)行比較。
看完上述內(nèi)容,你們對C++11中怎么利用移動類對象代替拷貝類對象有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。