본문 바로가기

call by reference2

[C#]out과 ref 키워드 차이 C#에 보면 out이나 ref 키워드를 본적이 있을 것이다.쓰임새를 보면 이 2개는 거의 같은 느낌으로 쓰이는데 무슨 차이가 있는지 궁금해서 정리해 보았다. 우선 out과 ref의 차이를 예시를 통해서 보자.먼저 out의 예제이다.1234567891011121314class Test_Out{ static void initArray(out int[] arr) { arr = new int[3] {1, 2, 3}; } static void Main() { int[] array; initArray(out array); // arr[3] = {1, 2, 3} }}Colored by Color Scriptercs 이어서 ref의 예제를 보면...1234567891011121314class Test_Ref{ stat.. 2016. 1. 27.
[Java]Call by value / reference 예전에 처음으로 C언어를 Call by value와 Call by reference의 개념은 나에게 매우 인상적이었다.말로 설명하기에는 너무 추상적인 느낌이라 잘 할 수 없지만 뭔가 미심쩍던 부분들이 한방에 해결되는 그런 느낌이었다. 그러다 Java를 시작하게 되었고 Java를 처음 접하는 나에게 누구나 처음 말하는 것은 "Java에는 pointer 개념이 없다!" 였다. 그 말을 듣는 순간 다시금 내가 알고 있던 개념들이 안개속에 들어가 뿌예지는 것을 느꼈다. 대체 pointer 개념 없이 어떻게 컴퓨터가 동작 할 수 있다는 말인가!? 그리고 Java를 공부하다 어느 문구를 보는 순간 피식하고 웃었다. 그 문구란 "Java에는 참조가 있다" 였다. Java가 워낙 API가 막강하다보니 왠만하면 신경 안.. 2014. 10. 28.