일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Sort
- java
- 악성코드
- 투자
- Call-by-reference
- c++
- C
- API
- 포인터
- windows
- OOP
- CLASS
- 자료구조
- array
- CSS
- HTML
- 윈도우즈
- jsp
- function
- algorithm
- System
- UTF-8
- beans
- 노드
- request
- WebProgramming
- JavaScript
- meta
- Kafka
- query
- Today
- Total
목록Windows Programming (22)
hahahia
메서드 재정의(virtual, override) virtual부모 클래스 함수 앞에 붙는 연산자.자식 클래스에 의해서 재정의될 수 있다는 의미를 가지고 있다.컴파일러는 이 지정자가 붙은 함수를 비가상함수와 다르게 컴파일함으로써 재정의될 준비를 한다. override자식 클래스 함수 앞에 붙는 연산자.부모로부터 상속받은 함수와는 다르게 구현한다는 의미를 가지고 있다.재정의되는 함수는 부모의 함수와 이름, 시그니처도 일치해야함.재정의된 함수는 부모의 함수에 의존적인 경우가 많은데 이 때 base 키워드로 부모의 원래함수를 호출 할 수 있다. 예제using System; using System.Collections.Generic; using System.Linq; using System.Text; class ..
using System; using System.Collections.Generic; using System.Linq; using System.Text; class Human { protected string Name; protected int Age; public Human(string aName, int aAge) { Name = aName; Age = aAge; } public virtual void Intro() { Console.WriteLine("Name : " + Name); Console.WriteLine("Age : " + Age); } } class Student : Human { protected int StNum; public Student(string aName, int aAge,..
#include #include #include #include #include "resource.h" using namespace std; LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM); HINSTANCE g_hInst; LPSTR lpszClass="Hahahia`s Notepad"; int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance, LPSTR lpszCmdParam,int nCmdShow) { HWND hWnd; MSG Message; WNDCLASS WndClass; g_hInst=hInstance; WndClass.cbClsExtra=0; // 윈도우 생성초기 설정 WndClass.cb..
WndClass.hbrBackground=GetStockObject(WHITE_BRUSH);BLACK_BRUSH, WHITE_BRUSH, LTGRAY_BRUSH 속성에 따라서 배경색을 지정할 수 있다. HCURSOR LoadCursor( HINSTANCE hInstance, LPCTSTR lpCursorName ); 첫번째 인수 hInstance는 커서를 가지고 있는 프로그램의 인스턴스 핸들이되 윈도우즈가 제공하는 디폴트 커서를 사용하려면 이 인수를 NULL로 지정하면 된다. 두번째 인수 lpCursorName은 사용하고자 하는 커서의 이름을 지정한다. 윈도우즈가 디폴트로 제공하는 커서에는 다음과 같은 종류가 있다. IDC_ARROW화살표 모양IDC_CROSS십자 모양IDC_IBEAMI자 모양IDC_NO..
소스코드 보기 => GO WndProc은 WinMain에서 호출하는 것이 아니라 윈도우즈에 의해 호출된다. WinMain내의 메시지 루프는 메시지를 메시지 처리 함수로 보내주기만 할 뿐이며 WndProc은 메시지가 입력되면 윈도우즈에 의해 호출되어 메시지를 처리한다. 이렇게 운영체제에 의해 호출되는 응용 프로그램내의 함수를 콜백(CallBack) 함수라고 한다. WndProc의 구조는 대체로 다음과 같은 형태를 가진다. 메시지의 종류에 따라 다중 분기하여 메시지별로 처리를 진행한다. switch(iMessage){case Msg1:처리1;return 0;case Msg2:처리2;return 0;case Msg3:처리3;return 0;default:return DefWindowProc(...);}Firs..
소스코드 보기 => GO WinMain 함수에서 하는 가장 중요한 일은 윈도우를 만드는 일이다. 윈도우가 있어야 사용자로부터 입력을 받을 수 있고 출력을 보여줄 수도 있기 때문이다. 윈도우를 만드려면 윈도우 클래스를 먼저 등록한 후 CreateWindow 함수를 호출해야 한다. 모든 윈도우는 클래스를 기반으로 하여 만들어지며, 윈도우 클래스는 만들어질 윈도우의 여러가지 특성을 정의한다. 윈도우 클래스는 windows.h에 다음과 같이 정의되어 있는 구조체이다. typedef struct tagWNDCLASS{ UINT style; WNDPROC lpfnWndProc; int cbClsExtra; int cbWndExtra; HINSTANCE hInstance; HICON hIcon; HCURSOR hCu..
/* first.cpp */ #include LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);HINSTANCE g_hInst;LPSTR lpszClass="First"; int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance ,LPSTR lpszCmdParam,int nCmdShow) {HWND hWnd;MSG Message;WNDCLASS WndClass;g_hInst=hInstance;WndClass.cbClsExtra=0;WndClass.cbWndExtra=0;WndClass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);WndClass.hCursor=Lo..
/* thread.c made by hahahia */ #include #include #include DWORD WINAPI print2(LPVOID lpParams){ while(1) { printf("Thread2"); Sleep(800); } } DWORD WINAPI print1(LPVOID lpParam) { while(1) { printf("Thread1"); Sleep(500); } } int main() { int a; CreateThread(NULL, 0, print1, NULL, 0 , NULL); CreateThread(NULL, 0, print2, NULL, 0, NULL); while(1) { scanf("%d", &a); printf("%d\n", a); } }