共用方式為


內嵌類別成員函式

在類別宣告的主體中定義的函式是內嵌函式。

範例

在下列類別宣告中, Account建構函式是內嵌函式。 成員函式GetBalance, Deposit,以及Withdraw並未指定為內嵌 ,但可以實作為內嵌函式。

// Inline_Member_Functions.cpp
class Account
{
public:
    Account(double initial_balance) { balance = initial_balance; }
    double GetBalance();
    double Deposit( double Amount );
    double Withdraw( double Amount );
private:
    double balance;
};

inline double Account::GetBalance()
{
    return balance;
}

inline double Account::Deposit( double Amount )
{
    return ( balance += Amount );
}

inline double Account::Withdraw( double Amount )
{
    return ( balance -= Amount );
}
int main()
{
}
注意事項注意事項

函式宣告但未在類別宣告中, 內嵌關鍵字。內嵌可以指定關鍵字在類別宣告。 結果是一樣的。

指定的內嵌成員函式必須宣告為相同的方式,在每個編譯單位中。 這個條件約束會造成行為如同它們是具現化的函式的內嵌函式。 此外,必須剛好一個定義的內嵌函式。

類別成員函式會預設為外部連結,除非該函式的定義包含內嵌規範。 前面的範例會顯示這些函式必須不能明確地宣告與內嵌規範。 使用內嵌函式中定義會使它成為內嵌函式。 不過,不能重新宣告一個函式內嵌在呼叫此函式。

請參閱

參考

內嵌,__inline __forceinline