전체 글 17

c# ref, out

ref: 1. 구조체를 대상으로 사용하면 클래스처럼 call by reference, 참조 형식이 됨 2. 클래스같은 참조 형식에 사용하면 값이 아닌 주소를 복사해감 ex) struct A { public int a, b; public A(int a, int b) { this.a = a; this.b = b; } } class Program { public static void Method(ref A a) { a.a += 1; } static void Main(string[] args) { A a = new A(0, 0); Method(ref a); Console.WriteLine(a.a); } } 출력 결과: 1 // out: 1. 참조 형식. 밖에서 초기화하든 하지 않든 메서드 안에서 out 매개변수..

공부/c# 2019.06.10

c# 상속 관련

sealed: 뒤에 public이든 protected이든 상속하지 못하게 함 ex) sealed public void Method() {} overload: 여러 매개변수로 메서드를 만드는 것 ex) public void Method() {} public void Method(int a) {} public void Method(string a, int b) {} virtual, override: 부모를 무시하고 재정의하는 것 parent ex) public virtual void Method() { Console.WriteLine("부모"); } child ex) public override void Method() { Console.WriteLine("자식"); } Main ex) Child test ..

공부/c# 2019.06.10

win32api 비트맵 그리기

HBITMAP hBitmap; BITMAP bitmap; HDC hMemDC; int x = 0, y = 0; // 출력할 위치 hBitmap = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_BITMAP1)); // 비트맵 리소스를 읽어들임 hMemDC = CreateCompatibleDC(dc); // 현재의 화면과 호환되는 메모리DC를 만듬 SelectObject(hMemDC, hBitmap); // 비트맵 핸들을 메모리DC에서 사용할 수 있도록 가져옴 GetObject(hBitmap, sizeof(BITMAP), &bitmap); // 비트맵 핸들의 정보를 bitmap 구조체에 반환 DeleteObject(hBitmap); // 비트맵 핸들 삭제(리소스) BitBlt(..

공부/c++ 2019.05.27