부모글 보이기/감추기 전위 증가 연산자는 오버로딩해서 쓰고있는데 아무리 뒤져봐도 후위 증가 연산자는 어떻게 오버로딩해야 할지 샘플 코드나 설명이 전혀 안나오네요. 속시원하게 코드로 직접 보여주시면 감사하겠습니다. [다음 글] System.AccessViolationException 보호된메모리 부분 예외처리[이전 글] Nullable reference type 에 Non-nullable reference type 을 대입해도 경고가 발생하지 않습니다. [연관 글] .NET Framework: 939. C# - 전위/후위 증감 연산자에 대한 오버로딩 구현 [최초 등록일: 9/18/2020] [최종 수정일: 9/18/2020] 비밀번호 댓글 작성자 2020-09-18 11시49분 일단, 아래의 글에 올렸으니 참고하세요.C# - 전위/후위 증감 연산자에 대한 오버로딩 구현; https://www.sysnet.pe.kr/2/0/12330그리고, 다음부터는 질문하실 때 자신이 구현한 코드를 문제만 재현할 수 있는 경우로 최소화해 올려주세요. 그래야 제가 답변할 때 "예상하지 않고" 정확한 답을 할 수 있습니다. 정성태 2020-09-20 03시06분 [작성자] 감사합니다 ^^ [손님] 2020-09-20 05시44분 [작성자] 답변해주셔서 감사합니다.아직 의문이 제대로 해결되지않고 있어 질문드려봅니다.아래의 내용인 참조 복사를 가져간 instance는 참조 값이 변화되면 참조를 복사한 instance에도 영향을 준다는 내용은 이해하였습니다.// class Integer인 경우{ // Integer value = n ++; Integer value = n; // class이므로 참조 복사 발생 n = n + 1; // n의 값이 바뀌지만 참조를 유지하는 value에도 영향}{ // Integer value = ++ n; n = n + 1; // n의 값이 증가 후, value = n; // value로 참조 복사}그런데 아래 내용에서 another에 value+1의 값을 넣었으면 연산순서에 따라 연산이 된 value+1의 값이 another라는 instance에 들어가야 하는데그렇지 않고 왜 반환되는 값은 value인 것인지 이해가 가지 않습니다.public static Integer operator ++(Integer instance) { Integer another = new Integer(instance._value + 1); return another; }또한 위의 내용 하나만 구현하면 전위/후위 연산자가 모두 구현되는 것도 이해가 가지않습니다. [손님] 2020-09-20 08시16분 저 내용 하나만으로 전위/후위 연산자가 모두 구현되는 이유는, 사용 측에서 그렇게 하기 때문입니다. 그러니까, 각각 다음과 같이 풀어서 C# 컴파일러가 빌드하는 것입니다.{ Integer n = new Integer(5); Integer value = n++;}==> { Integer n = new Integer(5); Integer temp = Integer.operator ++(n); Integer value = n; n = temp; }{ Integer n = new Integer(5); Integer value = ++n;}==> { Integer n = new Integer(5); Integer value = Integer.operator ++(n); n = value; }그래도 이해가 안 된다면, 빌드된 EXE/DLL을 IL 코드로 풀어서 살펴보시면 됩니다. 정성태 1 2 3 4 5 6 7 [8] 9 10 11 12 13 14 15 ... NoWriterDateCnt.TitleFile(s) 5484Syong4/16/20212634윈폼 기반의 응용프로그램 dll 참조와 32,64bit 빌드 관련 문의 [4]5483한예지4/15/20211408익명 형식과 var 관계 질문 있습니다. [2]5482질문4/13/20211979WPF를 위한 MVVM toolkit 선택과 관련한 문의드립니다. [4]5480한예지4/5/20211796GetHashCode 질문있습니다! [2]5479한예지4/4/20211685Equals를 닷넷에서 어떻게 구현했는지 보고 싶을 떄는 어떻게 해야 될까요? [2]5478갑자기C#3/23/20212774C# Winform에서 TextBox없이 입력 받을 수 있나요? [7]5477달팽이3/18/20211608c# 도형을 그린후 편집하는 방법이 궁금합니다. [2]15475dimohy3/2/20211939POH가 .NET 5에 추가된 것으로 알고 있습니다. POH가 유용한 경우는 어떤 경우가 있을까요? [1]5474Syong2/26/20211643사용자 지정 컨트롤 생성시 Invalidate, Update, Refresh의 차이점 [2]5473한예지2/25/20211542디자인 타임이 뭔지 궁금합니다!! [5]5472dimohy2/24/20211859등록하지 않고 ocx를 사용하는 `키움`관련 포스팅을 따라가다 질문드립니다. [6]5471남산2/21/20211857MarshalDirectiveException 에 대한 질문입니다. [1]5470한예지2/7/20211936yield 질문있습니다!! [2]5469유호성2/6/20211613Parallel + Task.Run 동시 실행 환경에서 간헐적으로 Task.Run()에서 null이 리턴됩니다. [3]15467heroho2/4/20211647실행 환경에 따른 Thread.Sleep 딜레이 차이 질문 [8]5466pr1/29/20211680c# winform load시 작업표시줄에 뜨지 않는 현상을 겪으신적이 있으신가요? [4]15465영귤1/28/20211608두 번째 await 부터는 스레드 개수만 늘어나는 것이 아닌가요 [1]5464민우1/26/20211530C# 빌드시 코드 치환되는걸 확인하는 방법 문의 [2]5463한예지1/24/20211902Parameters.AddWithValue 와 Parameters.Add 의 차이점이 궁금합니다. [2]5462C#초보1/22/20211870사용자 정의 메시지 전달이 가능한가요? [2]5461한예지1/22/20212071AsEnumerable() 메서드 질문 있습니다! [2]5459한예지1/21/20212112typeof와 GetType의 차이점 질문있습니다. [2]5458진우1/20/20212360C# DataTable 에 SQL 쿼리문을 실행하는 방법 문의 (LINQ 사용하지 않고) [6]5456성민1/17/202120889.0 출간 계획이 있으신가요? [2]5455한예지1/16/20211951교재 194페이지 콜백메서드 질문 있습니다! [5]5454한예지1/15/20211975교재 208쪽 질문....있습니다... [3] 1 2 3 4 5 6 7 [8] 9 10 11 12 13 14 15 ...