Kdy použít vložené funkce
Vložené funkce jsou nejvhodnější pro malé funkce, jako je například přístup k soukromých dat členů.Hlavním účelem těchto funkcí "přístupový objekt" jednu nebo dvě linky je vrátit státu informace o objektech; krátké funkce jsou citlivé na režii volání funkce.Delší funkce stráví poměrně méně času v/vrácení volací posloupnost a těžit z méně inlining.
Příklad
Point Třídy, v Výsledky volání funkce lze optimalizovat takto:
// 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()
{
}
Souřadnice manipulaci za předpokladu, že je poměrně běžné operace v klientovi tyto třídy, určení dvě funkce mechanismu přístupu (x a y v předchozím příkladu) jako vložené obvykle ukládá režijní náklady na:
Volání funkce (včetně předávání parametrů a uvedení adresy na objekt v zásobníku)
Zachování volajícího zásobníku rámeček
Nová instalace zásobníku rámeček
Vrátit hodnotu komunikace
Obnovení původní snímek zásobníku
Vrátit