연산자 오버로딩(operator overloading)은 c++에서 제공하는 기본 타입이 아닌 사용자 정의 타입으로 연산자를 사용할 수 있게하는 문법이다 예를 들어 +의 연산자를 클래스의 연산자 오버로딩을 이용할 수 있다. const 멤버 함수 멤버 함수 내에서 객
함수 포인터란? 변수는 값을 저장하는 메모리 공간의 이름이다. 포인터는 주소를 저장하는 메모리 공간의 이름이다. 함수 포인터는 함수의 시작 주소를 저장하는 포인터이다. 함수의 이름은 함수가 시작하는 시작 주소이며, 함수 포인터는 이 함수의 주소를 저장하는 포인터입니다
함수 객체(Function Object)는 함수처럼 동작하는 객체입니다. 함수처럼 동작할려면 객체가 '()' 연산자를 정의해야 합니다. 다시 말해 '()' 연산자를 오버로딩한 객체이다.함수 객체는 함수자(Functor)라 불리기도 한다functor는 객체지만 함수(fu
템플릿은 STL 제너릭 프로그래밍의 핵심입니다. 템플릿은 컴파일 타임에 클라이언트가 여러 타입의 함수나 클래스를 쉽게 생성한다.템플릿은 함수 템플릿(Function Template)와 클래스 템플릿(Class Template)이 있다.함수 템플릿은 함수를 만들어내는 틀
STL은 표준 C++ 라이브러리의 일부분으로 standard template library의 약자이다. stl은 프로그램에 필요한 자료구조와 알고리즘을 템플릿으로 제공하는 라이브러리입니다. 컨테이너: 객체를 저장하는 개체로 컬렉션 혹은 자료구조라 한다반복자: 포인터와
템플릿 형식 생성자 | | 설명 | |:----|:----| | vector v | 빈 컨테이너 | vector v(n) | 기본값으로 초기화된 n개의 원소를 갖는다 | vector v(n,x) | x 값으로 초기화된 n개의 원소를 갖
deque 컨테이너는 vector 컨테이너와 기능과 동작이 가장 비슷한 컨테이너로 vector의 단점을 보완하는 몇 가지 특징을 갖는다. deque도 vector와 같이 스퀸스 컨테이너이며 배열 기반 컨테이너이다. 템플릿 형식 ||설명 |:--------|:-----
list 컨테이너는 vector와 deque처럼 스퀀스 컨테이너로 원소가 상대적인 순서로 유지한다. 그러나 list는 노드 기반 컨테이너로 원소가 노드 단위로 저장되며 list는 이중 연결 리스트로 구현된다. 템플릿 형식 ||설명 |:--------|:-------- |template> class list| T는 list 컨테이너 원소의 형식 인터페이스...
set은 대표적인 연관 컨테이너이자 노드 기반 컨테이너이다. 연관 컨테이너는 특정 정렬 기준에 의해 원소가 자동 정렬되는 컨테이너이다. 또한, 원소 찾기(검색)를 로그 시간 복잡도에 수행할 수 있도록 균형 이진 트리로 구현되며 여러 찾기 관련 함수를 제공하는 것이 특징이다. 연관 컨테이너(set, multiset, map, multimap)는 모두 같은 ...
map은 대표적인 연관 컨테이너 이자 노드 기반 컨테이너입니다. 그래서 특정 정렬 기준으로 원소(key)가 자동 정렬되며 연관 컨테이너는 모두 같은 인터페이스의 멤버 함수를 제공한다. set의 원소는 key만으로 이뤄지지만 map의 원소는 key와 value의 쌍으로 이뤄진다. map은 []연산자를 이용해 원소(key, value)를 추가하거나 key에 ...
작성 예정
함수 객체(function object)는 함수자(functor)라는 애칭으로 더 많이 사용되며, operator() 연산자를 오버로딩한 클래스 객체이다. STL의 함수 객체는 다음 두 가지로 분류할 수 있다. 1)일반 함수 객체: 특정 기능을 수행하는 함수 객체
STL은 다음 여섯 가지 산술 연산 함수 객체(함수자)를 제공한다 //STL plus 사용 //사용자 Plus //산술 연사 함수자와 알고리즘
STL은 다음 여섯 가지 비교 연산 함수 객체 조건자를 제공한다. 조건자(predicate)는 조건을 판단해야 하는 대부분의 알고리즘에 사용된다. 특정 정렬 기준으로 정렬되어야하는 컨테이너인 연관 컨테이너 set, map ~에 도 사용된다. 이렇게 비교(조건자)가 사
STL은 다음 세 가지 논리 연산 함수 객체 조건자를 제공한다.논리 조건자는 일반적으로 T에 bool 형식을 지정한다. 일반적으로 피연산자의 논리 조건을 비교하기 때문이다.//논리 조건자 logical_and 예제
바인더(binder)는 이항 함수자를 단항 함수자로 변환합니다. STL은 다음 두 가지 바인더를 제공한다. bind1st: 이항 함수자의 첫 번째 인자를 고정하여 단항 함수자로 변환 bind2nd: 이항 함수자의 두 번째 인자를 고정하여 단항 함수자로 변환 //bi
함수 포인터 어댑터는 일반 함수를 어댑터 적용이 가능한 함수 객체로 변환한다. STL은 ptr_fun()이라는 함수 포인터 어댑터를 제공한다.//순차열 원소의 개수를 출력하는 count_if() 알고리즘 예제이다. v1 원소 30~40 원소와 그 반대의 원소를 출력하려