닷넷5,7에서 확인됨.



코드의 의도상으로는 aa,a가 서로 같고 bb,b가 서로 동일한 값이라고 해석되지만

const인 aa,a의 경우 컴파일타임에서 똘똘하게 10인 a를 aa에다가 대입한다는걸 알맞게 처리하지만,

static인 bb,b의 경우 런타임에서 절차적으로 readonly건 뭐건 bb에 b가 아직 대입되지 않은 시점의 default값으로 넣어준 후 b를 대입한다.


저런경우가 생기지 않을까 생각만 해보고 딱히 당해본적이 없어서 뭐 const마냥 똘똘히 처리해주나 어쩌나 몰랏는데,

이번에 당해보니 저런경우일줄 상상도 못했어서 디버깅하기 빡셋다. 단순히 맴버의 위치에 따라 결과가 바뀔수 있는데 인텔리센스가 경고하지도 않고 코드만 봐서는 눈치채기 힘들어 위험하다.