45.赋值运算符
我們在一個類里面重載賦值運算符的時候,有:
拷貝賦值運算符,移動賦值運算符,以initializer_list為參數(shù)的賦值運算符,復(fù)合賦值運算符。
復(fù)合賦值運算符不得非要是類的成員,不過我們傾向于將所有的賦值運算符包含在類的內(nèi)部。
拷貝賦值運算符,移動賦值運算符? 要考慮自賦值情況。
?
以initializer_list為參數(shù)的賦值運算符
strvec & strvec::operator=(std::initializer_list<int>il) {auto = alloc_n_copy(il.begin(),il.end());alloc_n_copy 返回一個pair,我們之前定義過free();//釋放自身空間elements = data.first;first_free = cap = data.second;return *this; }//initializer_list為參的賦值運算符無須檢查對象是否是自身。?
?
?
總結(jié)
- 上一篇: STL:priority_queue
- 下一篇: c-nominated = ((rche