2017-06-04 59 views
0

我只是编程的初学者,今天就开始学习Kotlin。我收到这个错误。如何解决这个'未解决的参考',当我已经定义的功能?

fun main(args: Array<String>) { 

    val (two, three) = nextTwo(1) // Unresolved reference: nextTwo 
    println("1, $two, $three") 

    fun nextTwo(num: Int) : Pair<Int, Int> { 
     return Pair(num+1, num+10) 
    } 

} 

Picture of the error.

+0

@滑板车为什么回答如果你不知道这个话题? Kotlin允许这样做,即使猜测有效,你也会通过猜测来混淆问题。 –

回答

6

本地功能只能在当地范围的定义后使用。

您可以移动nextTwo功能出了main功能,像这样(在这种情况下,也无所谓是否之前或main后的):

fun nextTwo(...) {} 

fun main(args: Array<String>) { 
    nextTwo(...) 
} 

或者,你可以将它在其内部使用main

fun main(args: Array<String>) { 
    fun nextTwo(...) {} 

    nextTwo(...) 
}