【預備】閱讀p314的例10.1。
【題目】該例實作了一個複數類,但是美中不足的是,複數類的實部和虛部都固定隻能是double型的。可以通過模闆類的技術手段,設計complex,使實部和虛部的類型為定義對象時用的實際類型。
(1)要求類成員函數在類外定義。
(2)在此基礎上,再實作減法、乘法和除法
你可以使用的main()函數如下。
【拓展】模闆類中的友元函數
友元函數提供了一種非成員函數通路私有資料成員的途徑。模闆類中能不能使用友元函數呢?當然可以,從下面的解法中品味一二。
【最後的一點讨論】本例中complex_add和add_complex兩個函數中的參數用作為引用類型,這是對象作參數的一般處理方法;參數在函數中不允許改變,我們加上了限定詞const。請體會這樣處理的好處,并且在以後的工作中主動利用。