<div><pre style="background-color:#2b2b2b;color:#a9b7c6;font-family:'JetBrains Mono';font-size:9.8pt;"></pre><pre style="font-family:'JetBrains Mono';font-size:9.8pt;"><span style="color:#cc7832;">fun </span><span style="color:#ffc66d;">main</span>() {<br><span style="color:#cc7832;">val </span>outval = Outclass()<br><span style="color:#cc7832;">val </span>inval = outval.Inclass()<br><br> outval.<span style="color:#9876aa;">outtext </span>= <span style="color:#6a8759;">"Hi Hi Out Class"<br></span><span style="color:#6a8759;"> <br></span><span style="color:#6a8759;"> </span>inval.Inprint()<br> Outclass().Inclass().Inprint()<br>}<br><br><span style="color:#cc7832;">class </span>Outclass <br>{<br><span style="color:#cc7832;">var </span><span style="color:#9876aa;">outtext </span>= <span style="color:#6a8759;">"Out Class"<br></span><span style="color:#6a8759;"><br></span><span style="color:#6a8759;"> </span><span style="color:#cc7832;">inner class </span>Inclass<br> {<br><span style="color:#cc7832;">fun </span><span style="color:#ffc66d;">Inprint</span>() <br> {<br><span style="font-style:italic;">println </span>(<span style="color:#cc7832;">this</span><span style="color:#467cda;">@Outclass</span>.<span style="color:#9876aa;">outtext</span>)<br> }<br> }<br>}</pre></div> <div>보시는 바와 같이 내부 함수 구현 코드인데요. 결과 값은</div> <div><span style="font-size:9pt;"> </span></div> <div>Hi Hi Out Class</div> <div> <div>Out Class</div></div> <div><br></div> <div>이렇게 출력이 됩니다. </div> <div><br></div> <div><span style="font-size:9pt;">이해가 안되는게 Outclass().Inclass().Inprint() 값이 왜 inval.Inprint() </span><span style="font-size:9pt;">같이 Main 함수에서 변경된 outtext 값 "Hi Hi Out Class" 으로 나오지 않는지 궁금합니다.</span></div> <div><br></div> <div>Outclass().Inclass().Inprint() 와 inval.Inprint() 어떻게 다르게 작동되는지 궁금합니다.</div> <div><br></div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.