학과 샘플강의

c++ STL - 총 11시간 37분 / 강의당평균 : 34분51초

알지오 2016. 10. 18. 09:04


c++ STL

전체 : 11시간 37분 / 강의당평균 : 34분51초

01 연산자오버로딩 part1
단항연산자오버로딩/전위연산/사용자정의연산자/이항연산오버로딩/전역함수오버로딩/멤버함수오버로딩/friend/함수호출오버로딩/배열인덱스오버로딩
33분
책갈피 : [00:00] c++문법 / [00:22] 단항연산자 오버로딩 / [00:46] 구성 / [00:54] main함수 / [01:15] 후위연산 / [01:29] 결과예상 / [02:00] 실행 / [02:13] 전위연산결과확인 / [03:15] 사용자정의 클래스에서의 연산자사용 / [03:42] 객체생성 / [04:13] print / [05:00] 전위연산++ / [05:30] 후위연산++ / [05:46] 연산자오버로딩 / [06:08] operator / [06:38] int / [07:46] 전위 연산 결과 / [08:31] 확인 / [08:58] 직접호출 / [09:48] 이항연산 오버로딩 / [09:58] 구성 / [10:26] 객체선언 / [10:37] +연산 / [11:41] 덧셈 연산의 원리 / [12:11] 오버로딩 / [12:18] 이항 연산자 오버로딩 내용 확인 / [13:05] 직관적 보기 / [14:52] -연산 / [15:18] 디버깅 / [16:26] ==연산 / [16:41] 디버깅 / [17:47] !=연산 / [18:00] 확인 / [18:56] 전역함수 / [19:25] 전역함수연산자 오버로딩 / [19:40] 멤버함수연산자 오버로딩 / [20:56] 변경이유 / [22:14] operator / [23:02] 결과값 확인 / [23:22] 매개 변수가 2개인 이유 / [24:21] 주석표시 / [24:48] friend / [25:25] friend의 사용 / [26:07] 함수호출연산자 오버로딩 / [27:14] 디버깅 / [27:36] 함수호출 / [28:18] 매개 변수를 이용한 호출 / [28:26] 직접호출 / [28:45] 실행 / [29:30] 임시객체 함수호출 / [29:52] 연산자 오버로딩 문법 / [30:26] 배열인덱스오버로딩 / [31:03] 디버깅

02 연산자오버로딩 part2
메모리접근연산자오버로딩/타입변환연산자오버로딩/함수포인터/foreach알고리즘
37분
책갈피 : [00:22] 기본적인 준비를 위한 코딩 / [00:50] 예제로 사용할 포인트ptr이 라는 클래스를 선언 / [01:33] 메인함수 예제 / [01:46] 연산자 사용 방법 / [03:22] 일반포인터와 스마트포인터 비교 / [03:42] 스마트 포인터 구현 / [04:40] 중요한 점 / [05:38] 포인트ptr클래스 내부에 있는 소멸자 / [06:11] 메모리 접근연산자 오버로딩 / [07:30] 생성자를 이용한 타입 변환 / [08:16] 사용자 정의 클래스 객체에 int형과 문자열을 대입 / [09:22] 에러 나지 않게 하기 / [09:39] 생성자 선언 / [10:33] 포인터 위치 / [11:20] 빌드 / [12:05] 원치않는 묵시적 변환 막기 / [12:48] explicit 키워드 사용 / [13:07] 실행 / [13:39] 타입 변환 연산자를 이용한 오버로딩 / [14:18] int형,char*형 데이터에 사용자 정의 객체 대입 / [15:18] 타입 변환 연산자 오버로딩 이용 / [15:33] 오버로딩된 문법작성 / [16:22] 출력을 통한 검증 / [17:11] 함수 포인터 / [18:07] 함수 포인터의 종류 / [18:51] 포인터 / [20:00] 함수 포인터 선언 / [21:48] 멤버 함수에 함수 포인터 선언할 경우 / [22:41] 함수 포인터 대입 / [23:59] 각 함수의 원형 보기 / [24:32] 정적 멤버 함수 / [24:55] 멤버 함수 / [25:02] 함수 포인터 호출 / [26:52] for_each알고리즘 / [27:22] for문과 for_each문의 비교 / [27:48] 전역 함수 대입 / [27:51] 실행 / [28:00] 정적 멤버 함수 대입 / [28:07] 멤버 함수 대입 / [28:18] for_each알고리즘을 이용한 출력 / [29:30] 실행 / [30:41] 비슷한 예제 보기 / [32:00] for문 출력 / [32:52] 실행 후 결과 확인

03 함수와 템플릿
함수 객체/함수 템플릿/클래스 템플릿
37분
책갈피 : [00:04] 함수 객체 / [00:49] 클래스 객체 선언 / [01:15] 인자 값을 받지 않는 함수 객체 호출 / [02:19] 연산자 오버로딩 / [03:14] 인자 값을 받는 함수 객체 호출 / [04:40] 확인 / [05:00] for_each 알고리즘에 함수 객체 전달 / [06:30] 함수가 원하는 값 불러오기 / [07:00] 확인 / [08:24] 함수 객체를 통한 less 구현 / [09:39] 전역 함수 호출 / [10:28] 확인 / [10:48] 사용자 정의 함수 객체 호출 / [11:31] 확인 / [11:41] STL less 함수 객체 호출 / [13:13] 확인 / [14:20] 간결하게 작성하기 / [15:31] greater를 이용해 less와 결과값 비교하기 / [16:06] 확인 / [16:26] 함수 템플릿 / [17:21] 내용 살펴보기 / [19:37] 함수 템플릿 특수화 / [20:10] 다양한 타입의 매개 변수를 받는 함수 호출 / [21:41] 확인 / [23:02] 템플릿을 이용한 함수 호출 (타입 명시 안함) / [23:25] 확인 / [23:59] 템플릿을 이용한 함수 호출 (타입 명시) / [24:22] 확인 / [26:11] point 객체 출력 / [26:41] 확인 / [27:00] 클래스 템플릿 / [27:41] 예제 보기 / [29:18] 클래스를 클래스 템플릿으로 / [30:41] 클래스 템플릿 특수화 / [31:51] 클래스 템플릿 사용하기 / [32:37] 에러 확인 / [33:30] 확인 / [33:52] 클래스 템플릿 특수화 하기 / [34:20] 특수화 문법 구현 / [34:52] 확인 / [36:15] 클래스 템플릿 디폴트 매개변수 / [37:08] 확인

04 STL 템플릿 예제와 vector 컨테이너
For_Each 재현/Less,Greater 재현/벡터 컨테이너
35분
책갈피 : [00:04] stl 템플릿 / [01:38] 메인 함수 보기 / [03:07] 함수 포인터 전달 / [03:53] for_each 함수 템플릿 / [04:15] 내용 살펴보기 / [06:30] print t 보기 / [06:59] 확인 / [07:24] for 문을 사용할 경우 / [07:57] 확인 / [08:09] less와 greater 알고리즘 재현 / [08:20] 메인 함수 보기 / [10:09] 클래스 템플릿 함수객체 less / [11:39] 클래스 템플릿 함수객체 greater / [13:11] 확인 / [14:09] 실제 사용 되고 있는 stl의 less 호출후 비교하기 / [15:28] 확인 / [15:54] greater 알고리즘 호출 / [16:18] 확인 / [16:51] vector 컨테이너 / [17:22] 소스 보기 / [18:00] 메인 함수 보기 / [18:33] 반복자 사용 / [18:51] 순서 변경 / [19:22] 호출 결과 확인 / [21:07] 클래스 템플릿 재현 / [23:21] 반복자 / [23:56] 확인 / [24:41] 반복자 선언 형태 / [26:00] 출력되는 대상 비교 / [27:15] 반복자의 장점 / [28:29] vector 컨테이너 반복자 사용 / [30:03] 확인 / [30:22] 벡터 내부적으로 오버로딩된 연산자 사용 / [31:10] 확인 / [31:33] 마이너스 연산자 호출 / [31:56] 확인 / [32:37] 반복자 배열인덱스 연산자 사용 / [34:30] 경계선 삽입 / [35:07] 확인

05 STL 템플릿 / 벡터 컨테이너
STL VECTOR 알고리즘/컨테이너 어댑터/반복자, 조건자 어댑터
39분
책갈피 : [00:05] stl 알고리즘 / [00:19] find 알고리즘 / [00:32] sort 알고리즘 / [01:33] 소스 살펴보기 / [01:51] main 함수 보기 / [02:23] 값을 출력 / [02:57] 비정렬 상태로 삽입 / [03:38] 정렬값 출력 / [04:00] 메인함수-백터선언, 값삽입 / [04:28] 백터컨테이너 / [05:12] itor / [06:15] 범위지정 연산자 / [06:59] find 알고리즘 매게변수 / [07:23] 찾기 결과에 따른 출력 / [08:54] 찾은 결과 실행 / [09:09] 정상적인 값 출력 확인 / [09:24] 없는 결과 실행 / [09:39] 정상적인 값 출력 확인 / [09:58] find 주석처리 / [11:20] 균일적인 알고리즘 / [13:22] type1 결과값 확인 / [13:39] 정렬되어 출력 / [14:07] gSort 결과값 확인 / [14:22] 반대의 결과 출력 / [14:33] 변경 / [14:56] 같은 결과값 출력 / [16:14] 어댑터 / [16:37] stack 컨테이너 어댑터 / [16:55] 인터페이스 변경 / [17:03] 어댑터의 종류 / [17:59] 기본 백터 선언 / [18:52] 변환 / [19:10] 인터페이스 비교 / [19:33] stack의 함수와 인터페이스 / [20:29] push 함수 / [21:11] top,pop,size 사용 / [21:41] size값 예상 / [22:52] 실제 stack 컨테이너 함수 / [24:03] 실행 / [24:40] 정상적인 값 출력을 위한 실행 / [25:00] stack 주의점 / [25:33] empty 함수 / [26:11] 출력 / [26:56] 실행 / [27:15] 1은 true를 상징 / [28:03] 함수 변경 후 실행 / [28:25] 반복자 어댑터와 함수 어댑터 / [29:03] 메인함수 확인 / [29:15] 반복자 어댑터 / [29:30] 소스 보기 / [29:48] 실행 / [30:10] 결과값 출력 / [30:36] 기본 반복자와 비교 / [31:18] reverse_iterator / [32:12] 사용 역반복자 구현 / [32:57] for문 확인 / [33:34] 실행 결과 확인 / [33:57] 역으로 출력된것 확인 / [35:22] 함수 어댑터 not2를 이용한 less의 역 / [36:00] fless / [36:29] 실행 결과 확인 / [36:45] true / [37:12] not2 less 값 출력 / [37:52] 실행 결과 확인

06 벡터의 함수
35분
책갈피 : [00:06] 벡터의 함수 / [00:51] 벡터 선언과 동시에 초기화 / [01:47] vecSubData / [02:46] 구간 초기화 / [04:24] 실행 결과 확인 / [04:54] 벡터 선언 후 초기화 / [05:15] assign / [06:00] 실행 결과 확인 / [07:28] SubData값이 헷갈릴 수 있으니 변경 / [07:46] 실행 결과 확인 / [08:07] size type 자료형 / [09:15] 범위지정 연산자 사용 / [10:03] at 함수 / [11:20] 예외처리를 위한 함수 / [11:56] 출력 결과 확인 / [12:50] 결과가 같은 것을 확인 / [13:16] capacity / [14:33] capacity와 size의 값 / [15:30] 출력 결과 확인 / [16:36] capacity는 size보다 크게 할당 / [17:33] reserve/resize / [19:18] 벡터내용 삭제 / [19:45] clear / [20:15] 출력 결과 확인 / [21:30] erase / [21:56] 벡터내용 삭제 / [23:07] 실행 결과 확인 / [23:37] erase 구간으로 삭제 / [23:44] 실행 결과 확인 / [24:03] swap / [24:26] capacity 까지 변경 / [25:18] 실행 결과 확인 / [25:40] front/back / [26:11] front-vecdata.begin() / [26:22] back-vecdata.end()-1 / [27:07] insert / [27:44] 특정 위치에 구간 삽입 / [29:07] vecdata값 확인 / [30:41] 출력 결과 확인 / [30:56] 예상된값 확인 / [31:11] 특정 위치에 특정값 삽입 / [31:48] 출력 결과 확인 / [32:00] 예상된값 확인 / [32:19] 특정 위치에 특정 갯수만큼 특정값 삽입 / [32:45] 출력 결과 확인 / [33:22] 벡터끼리의 사칙연산

07 deque 와 list
deque/list
38분
책갈피 : [00:03] deque / [00:20] 벡터와 유사한 컨테이너 / [01:00] deaData / [01:07] push 함수 / [01:52] 실행 결과 확인 / [02:07] 예상된값 확인 / [02:36] pop 함수 / [02:45] 값 예상 / [03:23] 실행 결과 확인 / [03:38] insert / [03:57] 벡터의 insert 동일 / [04:30] insert 코드를 통해 확인 / [05:25] 예제 수정 / [05:46] 실행 결과 확인 / [06:15] 중간 삽입 / [07:00] 벡터에서는 비효율 / [07:45] 상황에 맞는 적절한 컨테이너 사용 / [08:20] 값 예상 / [08:28] 실행 결과 확인 / [08:45] list 컨테이너 / [09:16] 랜덤엑세스 불가능 / [09:37] 소스보기 / [09:58] lstData / [10:11] push 함수 / [10:33] 값 예상 / [11:18] 실행 결과 확인 / [11:56] list push_front / [12:15] 출력 결과 예상 / [12:50] 실행 결과 확인 / [13:58] list pop_back / [14:11] 출력 결과 예상 / [14:39] 실행 결과 확인 / [15:03] list pop_front / [15:24] deque와 같은 인터페이스 제공 / [16:52] 실행 결과 확인 / [17:22] 다시 실행 결과 확인 / [18:15] insert / [18:33] 코드 확인 / [18:48] lstData / [19:00] lstTemp / [19:33] 출력 결과 예상 / [19:52] 실행 결과 확인 / [20:10] lstTemp 초기화 확인 / [20:48] list insert / [21:11] 첫번째값은 위치 / [21:44] 실행 결과 확인 / [22:18] 매개변수 값의 기능 / [22:25] 두번째값은 개수, 세번째값은 값 / [22:40] 출력 결과 예상 / [23:00] 실행 결과 확인 / [23:44] lstTemp값 모두 선택 / [24:02] 출력 결과 예상 / [24:26] 실행 결과 확인 / [24:56] list erase / [25:33] 실행 결과 확인 / [26:18] itorDelete / [27:26] 실행 결과 확인 / [28:14] list remove / [28:33] 삭제할 값의 요소를 전부 삭제 / [28:41] list remove_if / [28:56] list splice / [29:17] 삭제 조건자 함수 / [30:45] 메인함수 확인 / [31:18] push_back을 통해 값을 입력 / [31:22] 출력 결과 예상 / [31:37] 반복문을 통해 lstData에 값 입력 / [32:07] 실행 결과 확인 / [32:22] remove 함수 / [32:37] 값을 직접 입력 / [32:52] 출력 결과 예상 / [33:20] 입력한 값을 모두 삭제 / [33:29] 실행 결과 확인 / [34:06] remove_if 함수 / [34:20] delete_func / [34:52] 남아있는 값 / [35:30] 실행 결과 확인 / [36:37] splice 함수 / [36:57] 영역을 복사해서 붙여넣는 함수 / [37:42] 실행 결과 확인

08 list 컨테이너
list 컨테이너에 대해 공부하고 실습합니다.
39분
책갈피 : [00:18] reverse와 unique / [00:26] reverse-정렬을 반대로 바꾸는 함수 / [01:07] unique-값을 변경시키는 함수 / [01:15] 소스보기 / [01:29] 사용자 정의 조건자 함수 / [01:44] 메인함수 확인 / [02:27] 리스트에 0~4까지 값 삽입 / [02:49] iterator를 통해서 리스트 출력 / [03:07] 실행 결과 확인 / [03:30] 리스트 반전 reverse함수 호출 / [03:46] 출력 결과 예상 / [04:28] 인접해있는 공통된 값을 제거 / [04:55] 공통된 값을 가지도록 추가 / [05:09] splice사용 / [06:46] 값들 사이에 lstTemp값 추가 / [07:15] 출력 결과 예상 / [07:46] 실행 결과 확인 / [08:11] unique 함수 사용 / [08:22] 출력 결과 예상 / [08:54] 실행 결과 확인 / [09:20] unique 심화 / [11:24] 조건자 / [11:41] 조건자 함수 / [11:56] return true/return false / [12:13] 메인함수 확인 / [12:56] lstTemp 선언과 동시에 초기화 / [13:26] lstData의 값 0~4 / [14:01] 값을 더 추가 / [14:37] push_front / [14:46] list 맨 앞에 5 5 삽입 / [15:31] list 맨 뒤에 5 5 삽입 / [16:30] 실행 결과 확인 / [16:52] 유니크하지않은 결과 / [17:11] 조건자를 이용한 유니크함수 호출 / [17:26] less 알고리즘 호출 / [17:40] 확인 / [17:59] greater 호출 / [18:17] 유니크하지않은 결과 / [18:32] 사용자 정의 함수로 호출 / [18:48] 유니크한 결과 확인 / [19:03] 정렬 기능을 가진 함수 / [19:11] sort 함수 / [19:36] 매개변수의 형태 / [20:11] 조건자 함수 user_func / [20:45] 조건자 함수 포인터 pFunc / [21:18] 조건자 함수 객체 class / [21:48] 세가지 형태의 매개변수 / [21:59] 메인함수 확인 / [22:47] push_back을 통해서 0~4까지 값 삽입 / [23:00] reverse로 리스트 반전 / [23:26] stl greater / [24:26] lstData 정렬 / [24:51] 정상적으로 정렬된것 확인 / [25:03] stl less / [25:18] greater와 반대로 정렬된것 확인 / [25:52] 유저정의 함수/함수 포인터/함수 객체 / [26:30] user_func 호출 / [26:48] 정상적으로 모든값 호출 / [26:59] 함수 포인터 호출 / [27:30] 정상적으로 호출 / [27:41] 함수 객체 호출 / [28:07] 정상적으로 호출 / [28:21] merge / [28:40] 병합/정렬 / [29:18] 같은방식 / [30:29] 메인함수 확인 / [30:45] 2개의 리스트 선언 / [31:03] assign / [31:41] lstTemp 결과값 예상 / [32:00] lstData 결과값 대입 / [32:28] 결과값 예상 / [33:07] merge를 통한 병합 정렬 / [33:22] 정렬의 기준 / [34:50] 결과값 예상 / [36:06] lstData 정렬된 상태로 값이 병합된것 확인 / [36:57] merge greater / [37:20] 반대로 정렬된 값 확인 / [37:52] 사용자정의 함수 / [38:20] 정상적인 값 출력 / [38:34] 함수 포인터 / [38:54] 사용자정의 함수와 같은 값 출력

09 set 컨테이너
set 컨테이너에 대해 공부하고 실습합니다.
36분
책갈피 : [00:06] set 컨테이너 / [00:27] 메인함수 확인 / [01:22] pair / [01:38] 반복자 어댑터 / [02:13] 반환된 값 출력 / [02:20] set / [02:37] insert만을 이용해서 값 삽입 / [02:59] 코드 확인 / [03:45] first/second / [04:23] 결과를 second에 리턴 / [04:38] true/false / [05:15] 코드 확인 / [05:30] set 컨테이너의 모든 요소 출력 / [06:00] 자동정렬 / [06:30] 자동정렬된 값으로 출력 / [07:15] set 컨테이너에 중복된 값 삽입 / [08:20] 결과 예상 / [09:07] false 확인 / [09:24] set 컨테이너의 insert 함수 / [10:01] 반복자를 이용한 삽입 위치 지정 / [10:35] 코드 확인 / [12:18] setData의 형태 / [13:24] 위치값 제거 / [13:37] 결과 차이 확인 / [13:56] 속도의 차이 / [14:50] 위치 지정 / [15:16] 특정 범위의 값을 삽입 / [15:39] for문 / [16:11] keyvalue / [17:11] 결과값 예상 / [17:56] 결과값을 영역으로 지정 / [18:48] 정확한 값 확인 / [18:55] set 컨테이너의 검색 기능을 하는 함수 / [19:18] count / [20:11] 없는 값으로 세팅 / [21:00] 값이 몇개나 존재하는지 리턴 / [21:41] 값이 존재하지 않는 것 확인 / [21:56] 값 변경 / [22:11] 값이 존재하는 것 확인 / [22:32] find / [22:48] 없는 값으로 세팅 / [22:56] 값 예상 / [23:21] 값이 존재하지 않는 것 확인 / [23:30] find의 원리 / [23:45] find의 리턴값을 받을 반복자 / [25:11] 반복자 itorfind / [26:37] 실행 결과 확인 / [26:55] 값이 존재하는 것 확인 / [27:00] set 컨테이너의 조건자 / [27:10] set 컨테이너의 생성 / [27:18] less/greater / [27:32] 정렬 기준을 결정하는 것 / [28:52] set 컨테이너의 모든 요소 출력 / [29:11] greater는 재정렬이 되어 출력 / [29:26] 조건자 얻어오기 / [30:11] key_compare 반복자 / [31:10] typeid / [32:59] value_compare / [34:30] key값과 동일 / [35:00] setGreater / [35:36] 확인

10 set 컨테이너, multiset 컨테이너
set 컨테이너와 multiset 컨테이너에 대해 공부하고 실습합니다.
36분
책갈피 : [00:07] key_comp를 통한 값의 같음 비교 / [00:22] key_comp는 조건자 / [01:03] setLess라고 컨테이너 생성 / [01:25] 값의 같음을 비교하기 위한 변수 선언 / [02:07] bEqual / [02:27] bLess/bGreater / [02:44] bLess의 도출 과정 / [04:11] 예상된 값 출력 / [04:44] 조건자가 정상적으로 동작 / [04:46] lower_bound/upper_bound를 통한 값의 검색 / [06:46] 정상적으로 작동하는지 확인 / [07:53] 위치 비교 / [08:46] 정상적으로 출력 확인 / [08:54] 실제값을 넣어 확인 / [09:07] 정상적으로 출력 확인 / [09:16] equal_range()를 통한 값의 검색 / [09:46] setLess 컨테이너 생성 / [10:11] setLess에 들어있는 값 확인 / [10:35] pair 반복자 / [10:48] 두가지 위치 비교 / [11:28] 매개변수 nEqual / [11:46] iterator / [12:18] 출력값 예상 / [12:45] 위치가 같을 때 값이 존재하지 않는것 확인 / [13:50] 실제 들어있는 값 / [14:07] 위치가 다를 때 값이 존재하는것 확인 / [14:31] multiset 컨테이너 / [15:15] 멀티셋 선언 / [15:56] 두번의 insert 모두 성공 / [16:03] 중복되는 값 허용 / [17:15] 정렬까지 확인 / [17:36] 멀티셋 출력 / [17:56] for문까지 셋과 같은것 확인 / [18:11] 멀티셋 선언 / [18:33] 멀티셋에서 특정값을 찾는 방법 / [18:52] find / [19:40] 멀티셋을 이용한 반복자 생성 / [21:22] 셋과 같은 내용 / [21:41] 확인 / [21:51] 실제 존재하는 값 넣어 확인 / [22:07] 정상적으로 출력 확인 / [22:33] count / [23:21] nCountResult / [23:33] msetLess.count의 반환값 / [25:21] 예상한 값 확인 / [25:33] 확인 / [25:41] 실제의 갯수 확인 / [26:02] 1개만 들어있는 값 / [26:26] 정상적으로 출력 확인 / [26:37] 중복된 값의 갯수 확인 / [27:18] 우회검색 / [27:55] 멀티셋 컨테이너 생성 / [28:25] lower_bound/upper_bound 우회검색 / [29:59] 값을 실제값으로 변경 / [30:25] 예상했던 값 출력 / [30:47] equal_range 우회검색 / [32:30] pair / [32:52] 반복자 어댑터 / [33:28] pair의 값 2개 / [34:37] first의 값 출력 / [35:07] 맞는결과 확인 / [35:43] 중복되는 값 출력 / [36:15] 확인

11 map 컨테이너
map 컨테이너에 대해 공부하고 실습합니다.
37분
책갈피 : [00:04] map 컨테이너 / [00:26] map 선언 / [01:00] key값을 통해 value값을 찾는 컨테이너 / [01:10] map 컨테이너의 인터페이스 / [01:33] map insert / [02:07] 배열 인덱스 연산자를 통한 insert / [02:27] pair / [03:53] pairResult의 용도 / [05:15] int형 2개로 값 지정 / [05:39] 첫번째 값은 key값 두번째 값은 value값 / [06:58] 겹치지 않는 key값 / [07:30] map 출력 / [07:46] 정상적으로 출력 확인 / [08:16] key값이 겹치는 경우의 에러 / [08:35] 이미 존재하는 인덱스를 다시 insert / [10:26] 출력되는 값 예상 / [12:01] first는 map 컨테이너의 반복자 / [13:43] 실행결과 확인 / [14:00] 예상한 결과 확인 / [14:37] 배열 연산자를 통한 insert / [15:26] 인덱스의 값을 변경 / [16:11] key값이 존재하더라도 변경 / [16:30] 새로 생성한 key값에 대응하는 값 출력 / [17:33] 정상적인 값 출력 확인 / [18:17] erase / [18:33] 컨테이너 내부 요소 삭제 / [19:00] mapData라는 이름의 map컨테이너 선언 / [20:30] key값을 매개변수로 넣어주고 요소 삭제 / [21:45] 선택된 값 삭제되고 출력 / [21:56] 해당하는 영역의 삭제 / [22:45] 영역을 나타내는 매개변수 / [24:18] 선택된 영역의 값 삭제되고 출력 / [24:37] find / [25:22] nFindKey라는 int형 변수 선언 / [26:07] bSame 분리형 변수 선언 / [26:44] 반복자 itorFind / [27:41] 예상했던 값 출력 확인 / [27:59] 존재하는 key값 삽입 / [28:56] 정상적인 값 출력 확인 / [29:15] upper_bound와 lower_bound의 코드 사용 / [30:33] 반복자 itorUppder/itorLower / [31:21] bSame이라는 변수 선언 / [31:36] 두개의 반복자가 같은 경우 / [32:00] 두개의 반복자가 다른 경우 / [33:34] 정상적인 값 출력 / [34:00] nFindKey값 존재하지 않는 값으로 변경 / [35:07] 예상했던 값 출력 확인 / [35:27] 배열 인덱스를 통해 값 출력 / [37:20] 정상적인 값 출력

12 multimap과 알고리즘 adjacent_find
multimap과 알고리즘 adjacent_find에 대해 공부하고 실습합니다.
38분
책갈피 : [00:04] multimap / [00:34] multimap 선언 / [01:45] multimap추가/배열 인덱스 연산자 사용 불가 / [02:00] 추가 인터페이스 insert / [02:53] key값 value값 / [03:19] map과 multimap의 차이 / [04:15] multimap은 key값 중복 사용 / [04:30] 결과값 예상 / [05:15] multimap 요소 출력 / [06:00] 예상했던 결과값 출력 확인 / [06:23] 중복된 key값 허용 / [06:39] multimap의 인터페이스 활용 / [07:00] find / [07:43] nFindKey 미리 선언해둔 변수 / [09:05] 예상했던 결과 확인 / [09:46] count / [10:05] multimap 선언 / [11:11] count함수 호출/출력 / [11:24] count로 복수개의 결과 값 확인 / [12:13] multi관련 함수 / [13:05] 예상한 값 출력 / [13:13] nFindKey값 변경 / [13:33] 정상적인 결과 확인 / [13:43] nFindKey 중복되는 값으로 변경 / [14:00] 정상적인 결과 확인 / [15:18] upper_bound와 lower_bound로 key값 구간 검색 / [16:44] 2개의 반복자의 비교 / [17:00] for문으로 count / [17:52] 정상적인 결과 확인 / [18:11] equal_range로 key값 구간 검색 / [19:56] 실행 결과 / [20:18] 탐색알고리즘 / [21:56] adjacent find / [22:21] adjacent find 호출 / [22:47] 중복되는 원소 출력 / [23:56] 실행 / [24:15] 요소를 변경 후 확인 / [24:41] 중복된 값 빼고 제거 / [25:00] 실행 / [25:26] 중복되는 값이 없을 때의 값 예상 / [26:33] 중복된 원소 삭제 / [27:03] 실행 / [27:37] 매개변수 / [27:56] 함수 포인터 이용 / [28:07] pfunc_if / [29:48] 템플릿 함수 / [30:30] 함수 이름-사용자 지정 / [31:18] 변수를 선언하는 것과 동일 / [32:30] template / [33:00] 변수/함수 선언 / [33:44] 함수에 템플릿 함수 대입 / [34:52] operator / [35:22] 함수 포인터 이용 / [36:00] 템플릿 함수 이용 / [36:14] 템플릿 함수 객체 이용 / [36:30] 템플릿 객체 선언 / [37:36] 결과 값 확인

13 STL 알고리즘 part1
count, count_if, equal에 대해 공부하고 실습합니다.
40분
책갈피 : [00:07] STL 알고리즘 / [00:16] count 함수 / [01:11] bPred / [02:07] 조건자 함수 / [02:20] 함수 포인터 / [02:59] count 함수의 쓰임 / [03:22] 벡터 컨테이너 / [03:57] 상수형 변수 / [04:41] vecSecond라는 벡터 컨테이너 선언 / [05:00] ctiMaxSize / [06:15] resize / [07:30] 벡터 push back 호출 / [07:46] push back이 느려지는 현상 / [09:18] 실행 결과 확인 / [09:28] 다중갯수 / [09:33] nFindVal값 변경 / [09:43] 실행 결과 확인 / [09:56] count_if / [10:50] 조건자 / [11:20] bPred / [12:18] bPred가 true를 만족 할 때 카운팅 / [12:31] 카운팅 된 값을 리턴 / [12:56] count_if 호출 / [13:46] 출력값 예상 / [14:01] 실행 결과 확인 / [14:24] vecData의 내용 변경 / [14:48] 실행 결과 확인 / [15:07] 함수 내용 변경 / [15:54] 출력값 예상 / [16:26] 실행 결과 확인 / [17:00] 함수 포인터 삽입 / [17:41] pbPred라는 함수 포인터 선언 / [18:15] 함수를 함수포인터로 변경 / [18:41] 실행 결과 확인 / [19:00] equal / [20:41] 같은 이름의 함수 호출 / [21:33] 구간 비교 / [22:29] 첫번째 비교 대상 / [22:59] 두번째 비교 대상 / [24:30] 처음 두 반복자의 차이 만큼 비교 / [25:33] bEqual / [26:02] 실행 결과 확인 / [26:30] vecData와 vecSecond의 값 비교 / [27:48] 값이 같아지도록 변경 / [28:14] 실행 결과 확인 / [28:32] 조건자 사용하는 equal / [30:33] 함수 객체 / [30:52] 함수 포인터 선언 / [31:07] class이름 / [31:26] operator() / [31:33] 함수 객체 결정 / [32:22] 매개변수 / [34:15] less / [34:45] 2개의 매개변수를 비교 / [35:43] equal 함수의 호출되는 과정 / [36:44] less를 모두 만족 / [37:04] 실행 결과 확인 / [37:52] 결과 재 확인 / [38:07] CBpred / [38:19] 함수 객체를 매개변수로 삽입 / [39:00] vecData 변경 / [39:31] 실행 결과 확인

14 STL 알고리즘 part2
find, find_end에 대해 공부하고 실습합니다.
37분
책갈피 : [00:05] find관련 함수 / [00:57] nFindVal 변수 선언 / [01:14] 반복자 변수 itor_find / [01:22] vector 컨테이너 선언 / [02:00] find 함수 호출 / [02:30] 매개변수 / [03:30] 결과값 / [04:00] 실행 / [04:15] 결과 값 확인 / [04:26] find_if / [05:14] 세번째 매개변수 함수 / [05:30] 조건자 형태 / [05:46] find_if 함수 호출 / [06:09] bPred 함수 / [07:00] 실행 / [07:30] 결과 값 확인 / [07:30] vecData값 변경 / [08:05] 정상적인 값 출력 / [08:52] find_end / [09:26] 영역 관련 함수 / [09:46] vector 형태로 2개의 컨테이너 선언 / [10:09] push_back / [11:39] vecSecond / [12:20] insert / [12:54] resize / [13:58] 결과 값 예상 / [14:24] begin의 의미 / [14:58] begin()+1 / [16:22] 첫번째 값 / [17:03] 요소 200 전 / [18:00] find_end 함수 / [19:02] itor_find 반복자 / [19:18] 실제 매개변수 확인 / [19:56] 범위를 연산하는 형태 / [20:11] 특정 범위 두가지 비교 / [21:56] 메인함수 확인 / [22:36] 요소의 나열 / [23:14] vecSecond와 vecData의 확인 / [23:37] 요소가 겹치는 부분 / [25:56] 검색 할 대상의 범위 / [26:22] 검색 할 요소의 범위 / [26:48] 실행 / [27:10] 결과 확인 / [28:45] find_first_of / [28:59] 결과 값 예상 / [29:11] 실행 / [29:36] 결과 확인 / [29:41] search / [29:48] 실행 / [30:03] find_first_of와 같은 결과 값 / [30:26] 조건자 사용하는 find_end / [30:52] 소스 확인 / [31:18] less 함수 객체 호출 / [31:41] 차이점 / [32:14] 변한 값 / [33:15] 첫번째 요소의 반복자 리턴 / [35:12] 결과 값 예상 / [36:00] 실행 결과 확인

15 STL 알고리즘 part3
for_each/lexicographical_compare/min, max
23분
책갈피 : [00:06] 알고리즘 / [00:27] 메인함수 확인 / [00:57] vecDataSour / [01:15] vecDataDest / [01:51] for_each 함수 / [02:36] 매개변수 함수 Func_loop / [04:15] vecDataSour의 모든 요소 출력 / [04:39] 예상하는 결과 / [04:46] 실행 / [05:30] 함수 포인터 / [05:46] 마지막 매개변수 pFunc_loop / [06:43] 함수자 / [06:53] class CFunc_loop / [07:15] lexicographical_compare / [07:57] 연산자 operator / [09:09] 사전 순서 비교 / [09:45] 매개변수 / [10:00] bTrue / [11:07] 실행 / [11:18] 결과 확인 / [11:50] lexicographical_compare 조건자 / [12:11] 조건자 사용 / [12:37] less 호출 / [12:56] 실행 / [13:07] 결과 확인 / [13:41] min/max / [14:22] min 가작 작은 값 출력 / [14:35] max 가장 큰 값 출력 / [14:41] 실행 / [14:50] 정상적인 출력 값 확인 / [14:58] min/max 조건자 사용 / [15:13] POINT / [15:43] ptResult 변수 선언 / [16:26] 함수자 정의 / [16:41] 비교함수 Func_Compare / [17:22] 결과 예상 / [17:37] x값 출력 / [17:51] pt1이 결과로 리턴된것을 확인 / [17:56] min/max 알고리즘의 확장 / [18:17] min_element/max_element / [19:07] 실행 / [19:22] 조건자 사용 / [19:45] POINT / [20:26] 함수 Func_Compare / [20:56] 비교함수 / [22:21] 실행 결과 확인

16 STL 알고리즘 part4
mismatch/copy/fill/generate/swap/merge/replace
27분
책갈피 : [00:06] mismatch / [00:20] 메인함수 확인 / [00:38] vecFirst / [00:47] vecSec / [01:02] 결과 값 예상 / [01:42] 마지막 매개변수는 비교대상 / [02:23] itor_pair / [02:53] 실행 / [03:04] 실행 결과 확인 / [03:12] copy / [03:59] vecSec 복사 / [04:39] vecFirst와 vecSec의 값 정리 / [05:27] vecSec원본 출력 부분 / [05:46] vecSec복사 출력 부분 / [05:56] 결과 값 예상 / [06:30] 실행 / [06:46] 결과 값 확인 / [06:55] fill 알고리즘 / [07:28] 소스확인 / [08:05] 매개변수 / [09:22] 실행 / [09:41] fill_n / [10:05] 두번째 매개변수 변화 / [10:56] for문을 통해 cout / [11:11] 실행 / [11:18] 결과 값 확인 / [11:28] generate / [12:07] 마지막 매개변수 fpGenerate / [12:24] 함수포인터 / [13:20] generate의 매개변수 확인 / [14:05] 실행 / [14:11] 결과 확인 / [14:16] swap 알고리즘 / [14:41] 메인함수 확인 / [15:18] 초기화된 값들 정리 / [15:31] swap 호출 / [16:03] 실행 / [16:26] iter_swap / [17:26] 결과 값 예상 / [17:47] 실행 / [17:59] 결과 확인 / [18:22] swap_ranges / [19:41] 모든 요소를 교환하는 함수 / [20:40] 실행 / [20:48] 결과 확인 / [20:56] merge(병합) / [21:33] vecMerge1 선언 / [23:00] merge함수 호출 / [23:22] 여러개의 매개변수 / [25:03] for문 / [25:14] 결과 값 예상 / [25:51] 실행 / [25:56] 결과 확인 / [26:14] replace / [27:11] 실행 후 결과 확인

17 STL 알고리즘 part5
transform/remove/reverse/next_permutation/partion/stable_partion/random_suffle/rotate
29분
책갈피 : [00:09] transform 알고리즘 / [00:23] 벡터 두개 선언 / [00:53] transform 호출 / [01:11] 매개변수 / [01:26] pfTrans 함수 역할 / [03:36] transform 알고리즘의 역할 / [04:14] 결과 예상 / [04:30] 실행 후 결과 확인 / [04:41] remove / [05:15] 특정 벡터의 영역 / [06:00] 기존의 값을 다른 값으로 대체 / [06:12] 결과 예상 / [06:30] 실행 / [06:44] 예상된 결과 확인 / [06:54] reverse / [07:38] 재나열 / [07:54] 매개변수 / [08:11] 실행 / [08:24] 결과 확인 / [08:33] 두번째 매개변수 변경 / [09:03] 실행 / [09:09] 결과 확인 / [09:33] next_permutation / [10:05] fPermutation 함수 / [10:33] 특징 / [11:00] 함수 호출의 형태 / [11:05] while문 / [12:28] 매개변수 / [12:46] 값을 변경 / [13:26] 결과 예상 / [14:18] 실행 / [14:33] 예상한 결과 확인 / [14:41] partition / [14:58] 매개변수 fPartition / [15:07] 함수의 형태 / [16:02] 결과 예상 / [16:26] partition을 호출했을 때 나오는 값 / [16:37] 코드 확인 / [16:55] itorPart / [17:56] 두번째 partition 출력 / [18:56] itorPart 주의점 / [19:14] partition1의 결과 출력 / [19:52] 다른 결과 출력 / [20:48] stable_partition 호출 / [21:22] itorStablePart로 변경 / [21:33] 함수 이름 변경 / [21:47] 실행 후 결과 확인 / [22:07] random_shuffle / [22:22] fRandom_shuffle 함수 / [22:40] GetTickCount 함수 / [23:33] random_shuffle 호출 / [24:30] 실행 / [25:30] 결과 확인 / [25:47] rotate / [26:18] 실행 / [26:45] 결과 값 확인 / [27:25] 두번째 매개변수 / [28:37] 두번째 매개변수 값 변경 / [28:48] 실행 후 결과 확인

18 STL 알고리즘 part6 과 string 컨테이너 part1
accumulate/partial_sum/c_str/data/construct/assign/compare/copy/length/size
32분
책갈피 : [00:07] accumulate 알고리즘 / [00:10] 역할 / [01:10] 메인함수 확인 / [01:25] nvecData 선언 / [02:00] accumulate 호출 / [03:06] 결과 값 예상 / [03:23] nTotal1과 nTotal2의 값 비교 / [03:30] 실행 후 결과 확인 / [03:51] partial_sum 알고리즘 / [04:40] nvecDataDest / [05:00] 예상 값 정리 / [06:15] 순차적으로 더해 값 이동 / [06:30] 실행 / [06:46] 예상한 값 출력 확인 / [06:55] string 컨테이너 / [07:15] c_str/data 내장함수 / [07:39] strBuf 스트링 변수 선언 / [07:46] c_str / [08:01] data / [08:11] 결과 값 예상 / [08:30] 실행 후 결과 확인 / [09:20] buff / [10:37] cout 내부에서 스트링 / [11:09] Construct / [11:39] 기본적인 형태 string strBuf / [12:35] 선언과 동시에 Buff로 초기화 / [12:54] 3으로 제약 / [13:11] 실행을 통해 확인 / [13:35] 첫번째 매개변수 인트형 / [13:50] 실행을 통해 확인 / [14:05] 영역 초기화 / [14:48] 실행을 통해 확인 / [15:03] assign / [15:24] 선언 후에 초기화 / [15:52] 실행을 통해 확인 / [16:26] 매개변수 / [16:52] 사이즈 만큼만 초기화 / [17:07] 실행을 통해 확인 / [17:30] strBufSub 미리 선언해둔 컨테이너 / [17:44] 매개변수 / [18:18] 실행을 통해 확인 / [18:52] string 컨테이너 안에 들어있는 알고리즘 / [19:00] compare 알고리즘 / [19:11] 문자열의 사전 순 비교 / [20:10] string 컨테이너 두개 선언 / [20:47] -1일 때 사전 순 빠름 출력 / [21:07] 문자열의 개수가 다를 때 / [22:22] 실행 후 결과 확인 / [23:18] size/length/copy 알고리즘 / [23:33] size/length 알고리즘 리턴값 동일 / [24:22] nSize/nLength 변수 선언 / [25:03] size와 length 출력 / [25:37] 실행 후 결과 확인 / [25:56] copy 알고리즘 / [26:41] 카피 대상 szDest / [27:40] 실행 후 결과 확인 / [27:55] Buffst / [28:52] copy와 비슷한 역할을 하는 알고리즘 / [29:18] += 연산자 / [29:52] 결과 값 예상 / [30:45] 실행 후 결과 확인 / [31:52] push_back / [32:00] 문자열 뒤에 문자 / [32:05] 실행 후 결과 확인

19 string 컨테이너 part2
assign/find/rfind/insert/erase/substring/replace
34분
책갈피 : [00:06] string class / [00:30] reserve 알고리즘 / [00:55] strBuf / [01:07] cBasec로 초기화 / [01:26] 결과 값 예상 / [01:57] lenght 출력 / [02:34] capacity 알고리즘 / [02:57] 실행 후 결과 확인 / [03:15] length의 값 명확 / [03:30] capacity의 값 / [04:15] 특성 / [05:11] 크거나 같게 reserve / [05:45] find 알고리즘 / [05:55] nPos / [06:15] 포지션의 줄임말 / [06:25] cout으로 출력 / [06:46] 매개변수의 위치값 출력 / [07:15] rfind / [07:30] 끝에서 부터 출력 / [08:54] 결과 값 예상 정리 / [09:16] 실행 후 확인 / [09:48] 문자열 검사 find / [10:16] 매개변수 변경 / [10:33] string strBuf 변경 / [11:03] 결과 값 예상 / [12:07] 실행 후 확인 / [12:56] insert/erase / [13:41] insert / [14:05] 삽입 위치 결정 / [14:28] 결과 값 예상 / [14:50] 실행 후 확인 / [15:24] 매개변수 추가 / [16:26] 실행 후 확인 / [16:52] 반복자 형태의 위치 / [17:33] 삽입 할 갯수 / [17:41] 삽입 할 문자 / [18:07] 문자열을 잘라내는 함수 / [18:26] erase 함수 / [19:22] n부터 끝까지 모두 지움 / [19:32] 결과 값 예상 / [20:26] 실행 후 결과 확인 / [21:33] n부터 갯수만큼 지움 / [21:52] 결과 값 예상 / [22:26] 실행 후 결과 확인 / [23:02] 특정 위치의 문자 한개 지움 / [23:48] 실행 후 결과 확인 / [24:22] 문자열을 지움 / [24:41] 실행 후 결과 확인 / [25:15] substr 함수 / [25:30] erase 함수와 차이점 / [26:03] 원본을 훼손하지 않고 새로운 문자열 생성 / [27:14] 결과 값 예상 / [27:56] 실행 후 결과 확인 / [28:47] replace 함수 / [29:30] 특정 범위의 문자열을 다른 문자열로 대체 / [30:00] 결과 값 예상 / [30:15] 실행 후 결과 확인 / [30:51] 매개변수 추가 / [31:52] 실행 후 결과 확인 / [32:58] 결과 값 예상 / [33:07] 실행 후 결과 확인 / [33:36] 범위로 변경 / [33:52] 결과 값 예상 / [33:57] 실행 후 결과 확인

20 string 함수포인터
함수오버로딩/가변함수/멤버함수/템플릿 객체 함수
35분
책갈피 : [00:08] 함수포인터와 함수포인터의 심화 과정 / [00:31] 함수 / [00:45] nFOutput 선언 / [01:30] 함수 오버로딩 / [01:57] 매개변수가 다른것 확인 / [02:42] 함수포인터의 오버로딩 / [03:45] 함수포인터의 이름 / [04:00] 함수포인터-괄호가 2개 / [04:28] 실제 함수 이름 대입 / [05:13] 함수포인터 오버로딩 불가능 / [05:55] 함수포인터의 정상적인 셋팅 / [06:15] 함수포인터 이름 변경 / [07:27] 함수 호출 / [07:46] 메인함수 확인 / [07:59] 2개의 함수포인터 호출 / [08:09] 결과 값 예상 / [08:20] 실행 후 결과 확인 / [08:35] 가변 함수 / [09:24] 가변 함수 오버로딩 추가 / [10:09] 매개변수가 다른것 확인 / [10:26] nCount / [11:07] 메인함수-가변 함수 호출 / [13:18] 가변 함수의 정의 / [13:43] 기본적인 가변 함수의 형태 / [14:13] va_arg / [15:30] nCount 출력 / [15:37] nResult 출력 / [16:59] 함수포인터_가변함수오버로딩 / [17:33] 실행 후 결과 확인 / [17:48] 멤버 함수포인터 / [18:11] 멤버 함수 선언 / [18:25] public / [18:47] 멤버 함수 정의 / [19:21] 멤버 함수의 함수 포인터 / [19:37] 일반 함수와 멤버 함수의 함수포인터 비교 / [20:03] CMemberFunc:: 차이 / [20:37] 포인터 연산자 사용 / [21:15] CcallFunc 객체 선언 / [21:51] 멤버 함수 포인터 호출 / [21:56] 실행 후 결과 확인 / [22:17] 가변 멤버 함수 포인터 / [22:44] 가변 함수-매개변수의 개수 / [22:52] 가변 멤버 함수 완성 / [23:45] 이름 변경 / [23:52] 매개변수 변경 / [24:15] 가변 멤버 함수 정의 추가 / [24:26] 내용 수정 / [24:48] 가면 멤버 함수 포인터 호출 / [25:37] 실행 결과 확인 / [26:07] 템플릿 함수 객체 / [26:30] 객체함수 선언 / [26:45] 템플릿 객체함수 / [27:21] operator 연산자 / [27:52] 템플릿 추가 / [28:18] 객체함수 포인터 생성 과정 / [28:41] 함수 포인터 생성 / [29:22] 멤버 함수 포인터 선언과 동일 / [30:18] 객체함수 포인터와 템플릿 객체함수 포인터의 차이 / [30:40] class이름 뒤에 class 템플릿의 형태 / [31:22] 함수 포인터는 함수 이름을 다른것으로 설정 / [32:22] 템플릿 객체함수 호출 / [32:42] FuncObj 객체 선언 / [33:22] 템플릿 객체함수 포인터 호출 부분 추가 / [33:59] 실행 / [34:35] 정상적인 출력 확인


샘플확인 : 알지오 검색후 -> 강의검색란 -> c++ STL