[코틀린기초] 20. 함수와 변수의 범위
함수의 실행 블록
블록 내에서 사용하는 변수는 지역 변수라고 한다.
반대로 블록 외부에 선언된 함수는 전역 변수라고 한다.
함수의 범위
지역함수는 선언부가 먼저 나와야 사용가능하다!
fun main(){ // 최상위 레벨의 함수
fun secondFunc(a: Int){
...
}
userFunc(4) // 사용자 함수 사용 -> 선언부의 위치에 상관 없이 사용
second(2) // 지역 함수 사용 -> 선언부가 먼저 나와야 사용 가능
}
fun userFunc(counts: Int){ // 사용자가 만든 최상위 레벨 함수 선언
...
}
fun a() = b() // b는 최상위 함수므로 선언위치 상관 없이 사용 가능하다.
fun b() = println("b")
fun c(){
fun d() = e() // 오류! e는 지역함수므로 선언이 먼저 와야함
fun e() = println("e")
}