2013-02-14 145 views
0

我試圖調用內部功能等等......調用內部函數?

scala> def myouter() = { 
    | def myInner() { 
    |  println("In inner now") 
    | } 
    | this 
    | } 
myouter:()type 

scala> myouter().myInner() 
    <console>:9: error: value myInner is not a member of object $iw 
      myouter().myInner() 
        ^

我如何實現這一目標的任何提示?

+0

方法不是一個類/類型,它不包含成員... myInner只是myouter方法範圍內的其他方法...我推薦你閱讀這本免費的書:http:// www。 artima.com/pins1ed/ – 2013-02-14 22:25:37

回答

6

你不能。內部函數對於它們聲明的範圍是私有的。

+0

C. Sobrai我不能返回內部函數嗎? – dublintech 2013-02-14 22:55:40

+1

@dublintech - 你可以返回內部的_function_,但是它被轉換爲函數之後。該方法本身仍然是私人的。 – 2013-02-14 23:14:27

+0

@Rex Kerr - 任何片段的機會? – dublintech 2013-02-15 10:29:34