Sobes.tech
Junior — Middle

Meg tudná magyarázni az inline-függvények fogalmát és azok előnyeit?

sobes.tech MI

Válasz az MI-től

Az inline függvények olyan függvények, amelyek esetében a fordító megpróbálja a függvényhívást közvetlenül a hívás helyén a függvény törzsére cserélni, a szokásos függvénycímre való ugrás helyett.

Az inline függvények előnyei:

  • Csökkenti a függvényhívás költségeit (nincs ugrás és visszatérés).
  • Lehetővé teszi a fordító által végzett jobb kódoptimalizálást.

Azonban a túlzott inline függvényhasználat növelheti a végső bináris méretét.

Swift példában:

inline func square(_ x: Int) -> Int {
    return x * x
}

A fordító megpróbálja beilleszteni a square függvény törzsét a hívás helyére.