何時使用內嵌函式
內嵌函式最適用於小型函式,例如存取私用資料成員。 下列一或二條線"存取子 」 函式的主要目的是要傳回狀態物件的相關資訊。 精簡函式是函式呼叫的額外負荷區分的。 較長的函式花電話/傳回序列中的相對較少時間,並小於從內嵌。
範例
Point類別,在函式呼叫結果可以達到最佳狀況,如下所示:
// when_to_use_inline_functions.cpp
class Point
{
public:
// Define "accessor" functions as
// reference types.
unsigned& x();
unsigned& y();
private:
unsigned _x;
unsigned _y;
};
inline unsigned& Point::x()
{
return _x;
}
inline unsigned& Point::y()
{
return _y;
}
int main()
{
}
假設座標的操作是這種類別,指定兩個存取子函式用戶端中相當常見的作業 (x和y在前面的範例) 與內嵌 ,通常是儲存的額外負荷:
(包括參數傳遞,並將物件的地址放在堆疊上) 的函式呼叫
呼叫端的堆疊框架的保留
新的堆疊框架設定
傳回值的通訊
舊的堆疊框架還原
Return