1 推薦書(shū)籍?
基礎(chǔ)類(lèi)C++Primier? Fifth Edition?
C++ Programming Language? Fourth Edition
然后開(kāi)始進(jìn)階?
Effective C++? Third Edition
Effective C++ 侯老師翻譯的
標(biāo)準(zhǔn)庫(kù)
THE C++ Standard Library? Second Edition
STL 源碼剖析 侯老師翻譯
對(duì)類(lèi)進(jìn)行分類(lèi)的方法是 一種帶指針 Class withot pointer menber 一種不帶指針 (如complex) Class with pointer member? (如string)
課程中主要用標(biāo)準(zhǔn)庫(kù)的 Complex類(lèi)進(jìn)行說(shuō)明
其實(shí) string對(duì)象中 最主要的就是一個(gè)字符指針
Object Based : 面對(duì)的斯單一Class的設(shè)計(jì)
Object Oriented 面對(duì)的是多重classes的設(shè)計(jì)
classes和classes之間的關(guān)系
標(biāo)準(zhǔn)寫(xiě)法 防御式聲明?
#ifndef __COMPLEX__
#define __COMPLEX__
...
#endif
如果在函數(shù)體內(nèi)定義的函數(shù) 就構(gòu)成了一種inline 編譯器選擇性優(yōu)化
Initialization list非常重要 老師很關(guān)心 作業(yè)里一定要寫(xiě)
const編譯出的函數(shù)代碼和非const不同 所以可以重載
單例模式 很自然的引出 private構(gòu)造函數(shù)
常量成員函數(shù) 主要通過(guò)const對(duì)象來(lái)調(diào)用一些不需要對(duì)對(duì)象進(jìn)行修改的函數(shù)?
相同class的各個(gè)object 互為friend
在進(jìn)行操作符重載時(shí) , this會(huì)作為隱藏參數(shù)傳入
臨時(shí)對(duì)象 temp object? ? ? ?typename();
經(jīng)典用法?
complex someFunction()
{
????return complex(...);
}
對(duì)輸出進(jìn)行重載的時(shí)候 注意它是返回自身引用的
ostream&
operator << (ostream& os , const complex& x)
{
? ? return os<<....;
}
最后不太清楚的是 老師在講最后一個(gè)例子的時(shí)候使用的是
#include <iostream.h>? //為什么沒(méi)用iostream? 不得而知