• c# 액세스 모디파이어를 생략한 경우 처리되는 기본 값

    access modifier가 마이크로소프트 한글 문서에는 액세스 한정자라고 번역되어 있다. modify는 ‘수정한다’는 뜻 말고도 ‘수식한다’라는 의미도 갖는다. 형용사가 명사를 수식하듯이 대상의 뜻을 분명하게 한다는 뜻이다. 제한자라고 번역하는 건 틀리다. 마이크로소프트 문서에는 ‘특정한다specify‘고 기술되어 있다. 구글로 검색해 보면 그냥 액세스 모디파이어라고 하는 게 제일 많이 쓰인다. 액세스 모디파이어는 생략할 수 있다. 클래스의 멤버들인 경우에는 생략하면 private로 처리된다….

  • c# 캐릭터 배열 char[]를 아규먼트로 넘길 때 주의할 점

    String.ToCharArray는 인스턴스를 만든다. 아래의 코드에서 캐릭터 배열은 초기화되지 않았지만 제대로 실행된다. 캐릭터 배열은 레퍼런스 타입이므로 이걸 아규먼트로 받은 메서드에서 그 값을 수정하면 호출한 메서드에도 반영된다. String.ToCharArray를 이용하면 chars는 새로운 인스턴스를 갖게 되므로 호출한 메서드에는 반영되지 않아서 널 문자 다섯 개만 출력된다.

  • c# 클래스의 필드를 public으로 만들어 써도 되는 경우

    클래스 안에 만들어지는 프라퍼티와 필드는 데이터를 저장하는 데에 있어서는 기능하는 게 비슷하다. 이들 사이에서 어떤 걸 써야 하나 애매하다. 필드에 접근하려면 public으로 만들어야 한다. 마이크로소프트는 필드를 퍼블릭으로 만들지 말라고 한다. 필드를 퍼블릭으로 만들지 않으면 필드에 직접 접근할 수 없다. 프라퍼티를 만들어서 거쳐야 한다. 복잡하다. 프라퍼티만 만들어서도 필드를 대체할 수 있다. 뒤에 { get; set; }를…

  • c# 널러블 변수를 이해하고 cs8604 경고를 없애는 방법

    ComboBox.ObjectCollection.Add()는 널을 아규먼트로 받을 수 없다. 이 메서드에 널을 넣으면 애플리케이션이 멈춘다. 아래의 코드에서 method1에 널 아닌 값이 가더라도 컴파일러는 cs8604 경고를 보낸다. 의도하지 않은 상황에 널이 전달되어 애플리케이션이 멈추는 것을 막으려는 거다. 변수 오른쪽에 ?를 붙이면 널도 값으로 가질 수 있는 변수가 된다. 이걸 nullable variable이라 한다. 위 예제에서는 cs8604 상황을 일부러 만들기 위해서…

  • 윈도우즈 메시지를 제어하는 WndProc SendMessage PostMessage

    윈도우즈는 message를 통해 애플리케이션, 컨트롤과 통신한다. 여기에서 메시지는 MessageBox를 통해 출력되는 문자열을 말하는 게 아니고 구조체다. 윈도우즈가 보내는 메시지를 제어하려면 WndProc 메소드를 이용한다. WndProc으로 윈도우즈가 보내는 많은 메시지들 가운데 원하는 것만 골라낼 수 있다. 윈도우즈로 메시지를 보내서 윈도우즈로 하여금 무언가를 실행하게 하려면 SendMessage나 PostMessage 함수를 쓴다. 이것들은 win32 api에 있는데 이 api는 윈도우즈를 설치할 때…

  • ‘예전에 저지른’ 이라는 뜻의 historical

    옥스퍼드 영한사전에서 historical을 찾아보면 ‘역사적’ 따위의 뜻들만 나온다. 하지만 ‘예전에 저지른’이라는 의미로도 쓰인다. 이는 단지 ‘과거의’나 ‘오래된’과는 느낌이 조금 다르다. Northern Ireland’s finely balanced power-sharing arrangements were thrown into disarray Friday as the leader of the region’s largest unionist party stepped down after being charged with historical sexual offenses.– the wall street journal 2024. 3….

  • 형용사구 split screen – 주의를 둘로 분산시키다

    split screen은 명사로는 말 그대로 분할된 스크린을 뜻한다. 동사 split의 과거형과 과거 분사는 모두 split이다. 옥스퍼드 영한사전에는 나와 있지 않지만 split screen은 형용사구로도 쓰인다. 이때에는 비유적으로 그 의미가 확장되어 ‘주의를 둘로 분산시킨다’는 뜻이다. splitscreen이나 split-screen으로도 쓴다. 구글 검색을 해 보니 split screen이나 split-screen으로 사용되는 경우들이 똑같이 많았다. Trump’s First Trial to Test His Split-Screen Campaign–…

  • 시가 단일가 거래 대금으로 인한 왜곡과 보정 방법

    매매에 거래 대금을 이용하는 경우 개별 종목의 절대적인 수치를 관찰할 때에는 문제될 게 없는데 여러 종목들의 거래 대금을 상대적으로 비교해야 할 때에는 시가 단일가 매매에 해당하는 금액을 걸러 내야 할 필요가 있다. 종목에 따라 이게 큰 경우가 있고 작은 경우도 있기 때문이다. 예를 들면 2024년 3월 29일 거래 대금 1위인 삼성전자와 2위인 엔젤로보틱스는 각각 2,212,079와…