1. 程式人生 > >預處理、const、static、sizeof-說明內聯函數使用的場合

預處理、const、static、sizeof-說明內聯函數使用的場合

成員 static 轉換成 ++ () ret class cnblogs 函數

1:首先使用inline函數可以完全取代表達式形式的宏定義。

內聯函數在C++類中的應用最廣的應該是用來定義存取函數。我們定義的類中一般會把數據成員定義成私有的或者保護的,這樣,外界就不能直接讀寫我們類成員的數據了。對於私有或者保護成員的讀寫就必須使用成員接口函數來進行。如果我們把這些讀寫成員函數定義成內聯函數的話,將會獲得比較好的效率。例如下面的代碼:

class A
{
private:
    int nTest;
public:
    int readTest()
    {
        return nTest;
    }
    void setTest(int i);
}
inline 
void A::setTest(int i) { nTest=i; };

類A的成員函數readTest()和setTest()都是inline函數。readTest()函數的定義體被放在類聲明之中,因而readTest()自動轉換成inline函數;setTest()函數的定義體在類聲明之外,因此要加上inline關鍵字。

預處理、const、static、sizeof-說明內聯函數使用的場合