#ifndef *** #define *** #endif,避免多次引用。注意聲明文件的內容順序,一般是前置聲明、類聲明、類定義。(疑問,采用源文件進行類定義,與采用頭文件進行類定義有哪些區別)有的函數在類聲明時在類的內部直接定義(直接內聯),內聯只是一種編譯提示,是否真的內聯取決于函數復雜程度和編譯器實現。構造函數的默認參數和初始化列表的使用,之一初始化列很重要,和復制不同!能提高程序的初始化性能。構造函數可以有多個重載。如果將構造函數放在PRivate區域,則該類不能在外部構造對象,一般配合設計模式使用,采用工廠模式來構造類,禁止直接構造類的時候使用。例如:定義一個類的靜態函數getInstance,該函數返回一個靜態的對象。常量成員函數的意義很重要,一般不改變成員變量的函數都聲明為常量函數,在函數聲明后面添加 const。方便常量對象直接調用。明白參數傳遞中傳值和傳引用的意義,傳引用與傳地址效率一樣。在類對象的參數傳遞中盡可能采用傳引用的方式,對于不修改內對象的參數傳遞盡可能采用常量引用。返回值同樣重視傳值和傳引用,此時注意局部變量考慮到其生命周期,在傳引用時要尤其注意,不然會出現野指針。對于友元函數,可以直接訪問友元的私有成員變量。相同class的各個對象之間互為友元。關于操作符重載,用于實現帶有符號語義的函數,注意其語法要求。對于返回引用的情況,參考對序列化輸出和連加連減等操作。明白操作符重載什么時候需要成員函數,什么時候需要非成員函數。新聞熱點
疑難解答
圖片精選