==연산은 자동으로 equals쓰는거 알고 있었는데 is 연산은 ==랑 다르게 패턴매칭?을 사용해서 형식을 확인한다고 하네...
정확히 뭔 차이인진 모르겠는데 is는 null이랑 fakenull도 구분하는건가
댓글 9
fakenull을 잡기 위한게 아닐까? ==는 gc전이라서 아무것도 연결되지 않은 객체도 정상적으로 null판단하고, is는 그게 아니니, 언제 객체와 옵젝트들이 사라질줄 모르는 유니티 특성상 시리얼라이즈필드에 is를 지양하는걸지도? 잘 모르겠네. 그렇게 써본적은 없어서. 근데 이론적인거면 이거 아닐까? - dc App
익명(furryparty)2024-09-20 12:25:00
답글
오브젝트 데스트로이 상황을 사전 예방한거 아닐까? - dc App
익명(furryparty)2024-09-20 12:26:00
답글
그게 맞는거 같아. 최근에 java공부하다 와서 is 붙이는데에 재미들렸는데 유니티에선 자제해야겠어...
글쓴 ㅇㅇ(1.230)2024-09-20 12:28:00
답글
글쓴 ㅇㅇ(1.230)2024-09-20 12:29:00
fakenull 구현 방식이 UnityEngine.Object에서 == Operator를 오버로드해서 구현하고 있는데
?. 이나 ??, is null은 오버로드 된 오퍼레이터를 사용하지 않아서 그럼
fakenull을 잡기 위한게 아닐까? ==는 gc전이라서 아무것도 연결되지 않은 객체도 정상적으로 null판단하고, is는 그게 아니니, 언제 객체와 옵젝트들이 사라질줄 모르는 유니티 특성상 시리얼라이즈필드에 is를 지양하는걸지도? 잘 모르겠네. 그렇게 써본적은 없어서. 근데 이론적인거면 이거 아닐까? - dc App
오브젝트 데스트로이 상황을 사전 예방한거 아닐까? - dc App
그게 맞는거 같아. 최근에 java공부하다 와서 is 붙이는데에 재미들렸는데 유니티에선 자제해야겠어...
fakenull 구현 방식이 UnityEngine.Object에서 == Operator를 오버로드해서 구현하고 있는데 ?. 이나 ??, is null은 오버로드 된 오퍼레이터를 사용하지 않아서 그럼
개인적으로 오브젝트 수명 관리를 철저하게 하면 그다지 문제되는 경우는 없었음
기존 코드들도 바꿀까 고민했는데 걍 냅둬야겠다! - dc App
나도 배우고 갑니다. ㄱㅅㄱㅅ - dc App