第十四章 14 7節練習

2021-06-25 17:59:54 字數 770 閱讀 5414

練習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...