190625(2일차) - 콜백, 그리기(Invalid Region) return 0; 생략시 0을 자동으로 반환한다. caller : 호출 client callee : 피호출 server 콜 : 서비스코드를 클라이언트에서 불러낸다 콜백 : 클라이언트코드를 서버에서 불러낸다. 특정 이벤트가 발생되면 OS가 알아차리고 해당 이벤트에 맞는 기능이 수행되도록 콜백한다. #include void PrintList(const int arr[], int size) { for (int i = 0; i 다시그리기를 해야한다. - GUI그리기는 크게 2개 방식이 있다. 애플리케이션이 그리기 정보를 복원해야하는 방식 Win32API GDI, MFC GDI+, JAVA Swing, WinForm -> 데이터로 다시그리거나(일..
190625 - 복습 STL 추가 짤막 강의 교육을 받으면서 노트필기 했던 내용을 날것 그대로 업로드합니다. C++은 C언어 객체지향 STL Template 을 포함한다. STL(Standard Template Library)은 컴포넌트 라고 부르는 6가지 요소를 가지고 있다. 컨테이너 (JAVA나 C#에서는 컬렉션) 시퀀스(Vector,List) 연관 컨 알고리즘 (100여개) 반복자 함수자 어뎁터 할당기 저장 연속 비연속 vector V; list L; // 상수시간 삽입삭제 STL 연산자 중복이 중요 (C++에서도 연산자 중복이 중요하다. 태생적인 이유로.) 벡터에서 [] 연산자 중복을 해놓았다. 접근을 편하게 하려고. #include #include #include //using std..
190624(1일차) - Win32 API 교육을 받으면서 노트필기 했던 내용을 날것 그대로 업로드합니다. 윈도우 기본 윈도우 객체 메세지(키보드 마우스) 자식윈도우, 다이얼로그 앞으로 win32로 개발할 일은 없다고 보면된다. 윈도우즈.net 과정은 윈도우로 공부하게된다. 2000년도 : win32 API (GUI 라이브러리) (C언어 형태의 라이브러리 : 함수형 라이브러리) 이후에 객체지향 개발방법론이 이슈가 되었고 C++이 각광을 받기시작했다. 함수였던 것을 C++형태의 클래스화 (+a)한것을 MFC라고 한다. 90년대 말 되면서 컴포넌트라는 말이 많이 뜨기 시작했다. 모듈화 되어있는 것들을 소프트웨어로도 만들어보자 (소프트웨어 컴포넌트) 컴포넌트를 가져다 쉽게 쓸 수 있는 기능을 가진 COM Ac..
190621(4일차-정리end) - 연산자 오버로딩 교육을 받으면서 노트필기 했던 내용을 날것 그대로 업로드합니다. 연산자 오버로딩 ob1 + ob2 는 ob1.operator+(ob2) 로 수행된다. #include using namespace std; class pos { int x; int y; public: pos(int x = 10, int y = 20) :x(x), y(y) {} pos operator+(const pos& rf) {// pos tmp; tmp.x = x + rf.x; tmp.y = y + rf.y; return tmp; } void print() { cout
190620(3일차) - dynamic_cast, static_cast, const_cast, reinterpret_cast 교육을 받으면서 노트필기 했던 내용을 날것 그대로 업로드합니다. #include using namespace std; class AAA { int a; protected: int b; public: int c; }; class BBB :public AAA { // private(모든멤버가 private가 되어 상속됨) //| protected 상속 (private를 제외한 모든 멤머가 protected가 됨.) //기본적으로는 public 상속이됩니다. public: int get_b(void) { return b; } }; int main() { BBB obj; cout
190619(2일차) 생성자, 복사생성자, 소멸자 교육을 받으면서 노트필기 했던 내용을 날것 그대로 업로드합니다. #include using namespace std; #include"cstring" class Car2 { int engine; int pipe; int piston; public: Car2() : engine(10), pipe(10), piston(10) {} //Car2(int eg = 10 , int pp =10 , int pt=10) :engine(eg), pipe(pp), piston(pt) {} Car2() {} void print(void) { cout
190617(6일차-end) - 자료구조, sort 교육을 받으면서 노트필기 했던 내용을 날것 그대로 업로드합니다. cf. link(http://soen.kr/) 자료구조 list 1.list - 싱글, 서큘러, 더블, 커널-DL 1-1. sort(버블, 선택, insert->indirect insert->shell, Qsort merge, 직접기수(버킷) 2.stack - compiler 3.queue - deque 4.tree - DL, array(heap:priority Q) 4-4. (tree sort, BST(70%) , ) 5. graph(최소비용, 최단거리 -> A-star:PQ) (DFS, BFS) #퀵소트를 사용해서 정렬하기 #include #include void printInt(int..

190615(5일차) - 구조체, 파일입출력 교육을 받으면서 노트필기 했던 내용을 날것 그대로 업로드합니다. 전처리기 - 복습 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #include #include #include // malloc 사용시 필요 #pragma warning (disable:4996) main() { char buf[100]; char **p; p = (char**)malloc(sizeof(char*) * 3); // 3개짜리 포인터 배열을 가리키는 포인터. for (int i = 0; i fir* n->sec); } void func3(num n[]) { printf("%d + %d + %d + %d = %d", n..

190613(4일차) - 함수포인터, typedef, 전처리기 지시자, malloc 등 교육을 받으면서 노트필기 했던 내용을 날것 그대로 업로드합니다. int *p 는 int *p[3](포인터배열) 도 가리킬 수 있다. 배열 포인터 int (*p)[3] : 인트형 3개짜리 배열을 가리킬 수 있는 포인터 함수 포인터. 함수도 각각 함숟마다 주소를 가지고 있다. 함수는 주소로 호출한다. 배열의 이름도 주소지만, 함수의 이름 자체도 주소다. int add(int a,int b); int (*p)(int,int); p=add; #ex #include #pragma warning (disable:4996) int add(int a, int b) { return a + b; } void main() { int(*p..