퇴근5분전


훈스에 글올리신 분이 있어서 답변달다가

깊은 복사. 얉은 복사..

값타입을 파라미터로 넘겨주면 메모리 주소를 넘겨주는게 깊은복사

값들을 복사해서 새 메모리에 적재해서 넘겨주는게 얉은복사...

음!! 아닌가? 어느 블로그는 반대로 설명이 되있어서... 아리 까리 하네...




기록해둔것 같은데 없네...


            int n = 10;
            int k = 112;
            string t = "";
            string s = "";
            string h = "";
            unsafe
            {
                t = string.Format("{0}", (int)&n);
                s = string.Format("{0}", (int)&k);
            }
            t +="/"+ Ptr( n);  // 바뀐 주소값이 넘어오는것을 볼 수 있다.
            t += "/" + Ptr(ref n);   // 처음 n값과 같은 주소값.
            s += "/" + Ptr(ref k);


 

        public unsafe string Ptr( int n)
        {
            string addr = "";
            addr = string.Format("{0}", (int)&n);
            return addr;
        }
 
        public unsafe string Ptr(ref int n)
        {
            string addr = "";
            unsafe
            {
                fixed( int* l = &n )
                {
                    addr = string.Format("{0}", (int)l);
                }
            }

            return addr;
        }

'# 1) 프로그래밍' 카테고리의 다른 글

.Net] 양쪽 맞춤.  (0) 2012.03.25
.Net] C# 객체 숨기기....  (0) 2012.03.22
컨트롤 마우스 이동 처리  (0) 2012.03.14
.Net 2008 ] XML 직렬화  (0) 2012.03.13
Conditional 속성 사용!!!  (0) 2011.10.26