before 2020/JAVA

Java의 Call By Value 와 Call By Reference

hom2s 2014. 5. 14. 14:44

우연찮게 재미있는 옛날글(이라기보단 논쟁)을 발견했다.

https://kldp.org/node/119844


전체적으로 powersys라는 사람이 혼자 고군분투하고 있고 나머지 사람들이 이 사람의 주장에대해 폭격을 가하고 있는 형국이다. 한번씩 혼자서 다수를 상대할때 끝까지 포기하지 않는 용기와 신념을 보이는 사람들이 있는데 개인적으론 참 부럽다. (난 잘 못그러거든;)


powersys라는 분은 "C도 포인터와 &를 통해 call by reference가 되니까 C도 call by reference가 지원되는 언어인것이다." 라는 주장을 하고 있고 나머지 분들은 "C에서 그런 식으로 처리는 가능하지만 언어차원에서 지원하는 것은 아니다." 라는 주장(들)로 맞서고 있다. 이 배틀은 언어의 우수성(ㅋ) 이야기로 빠질듯하다가 언어차원에서의 지원이란게 무엇이냐 라는 논쟁으로 흘러가고 결국 powersys도 "C에서 call by reference가 (구현)된다" 라고 정리하면서 이야기가 마무리된다.


즉, 결론은 -> C는 syntax상 call by value만 지원한다.