인라인 함수

    [Kotlin] inline 함수

    코틀린 inline 코틀린에선 고차 함수를 사용할 수 있다. 함수를 인자 혹은 반환값으로 사용할 경우 내부적인 동작에서 무의미한 객체/함수를 생성하여 메모리를 낭비시키고 성능 저하를 일으킬 수 있다. 이러한 무의미한 행위를 줄이기 위해 inline 키워드가 제공되는데, 해당 키워드를 사용할 경우 고차 함수 내부의 코드가 그대로 복사되므로 위에서 말한 페널티를 줄일 수 있다. 원본 코드 fun main(){ val someText = foo("main"){ println("in") } } fun foo(value: String, doSomeThing: () -> Unit): String{ doSomeThing() return value + "foo()" } 인라인이 아닐경우 (Java 변환) public ..