練習14.30
為你的strblobptr類和再12.1.6節練習12.22(第423頁)中定義的conststrblobptr類分別新增解引用運孫福和箭頭運算子。
注意:因為conststrblobptr的資料成員指向const vector,所以conststrblobptr中的運算子必須返回常亮引用。
解答:strblobptr可以參考書中實現。
conststrblobptr的操作實現可以根據提示和參考書中實現來寫
const std::string& conststrblobptr::operator*() const
const std::string* constrstrblobptr::operator->() const
練習14.31
我們的strblobptr類沒有定義拷貝建構函式、賦值運算子及析構函式,為什麼?
解答:拷貝建構函式是不需要的,這裡是模擬指標的行為,所以沒有必要定義拷貝建構函式,編譯器自動合成的拷貝建構函式就足夠使用了。
賦值操作其實和拷貝構造的情況差不多。
析構函式這裡也是沒有必要的,因為有價值的資料是wptr,其是交給智慧型指標進行託管的,在生命週期結束的時候,指標會自行進行釋放和銷毀。
練習14.32
定義乙個類令其含有指向strblobptr物件的指標,為這個類定義過載的箭頭運算子。
解答:class pstrblobptr
private:
strblobptr *p;
};
第十四章 14 2 1節練習
練習14.6 為你的sales data類定義輸出運算子。解答 這裡完全可以參考書上已有的實現。練習14.7 你在13.5節的練習 第470頁 中曾經編寫了乙個string類,為它定義乙個輸出運算子。解答 首先,宣告部分完全可以參考書上的實現。再將要輸出的成員變數進行格式化輸出即可。這裡只寫個思路吧...
第十四章 14 8 2節練習
練習14.42 使用標準庫函式物件及介面卡定義一條表示式,令其 a 統計大於1024的值有多少個 b 找到第乙個不等於pooh的字串 c 將所有的值乘以2 解答 include include include include include using namespace std int main ...
第十四章 14 5節練習 14 6節練習
練習14.26 為你的strblob類 strblobptr類 strvec類和string類定義下標運算子。解答 std vector strblob operator std size t n const std vector strblob operator std size t n cons...