C++ &&符號的作用


C++ &&符號的作用

void pushBack(T& data){
       if(size>=capacity)
           return;
       addr[size] = data;
       ++size;
}
void pushBack(T&& data){
       if(size>=capacity)
           return;
       addr[size] = data;
       ++size;
}

假設上面兩個函數是你自定義的容器類里的插入元素函數,第一個pushBack的參數類型后有一個 & ,代表傳參只能傳左值;第二個pushBack是 && ,是C++一個新特性,代表只能對右值取引用。 舉個例子:

int a = 10,b = 20,c = 30,d = 40;
//傳入左值
array.pushBack(a);
array.pushBack(b);
array.pushBack(c);
array.pushBack(d);
//傳入右值
array.pushBack(50);
array.pushBack(60);
array.pushBack(70);
array.pushBack(80);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM