다음을 통해 공유


인라인 클래스 멤버 함수

클래스 선언 본문에 정의 된 함수는 인라인 함수가입니다.

예제

다음 클래스 선언에는 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