목록프로그래밍언어/C++ (55)
nakka soft world !
반복자 (STL iterator) 1, 개념 #include #include using namespace std; int main(){int x[10] = { 1,2,3,4,5,6,7,8,9,10}; //배열 int* p = x;++p;cout
컨테이너 (Container)array, vector, list, deque, set, Map, unorder_set, unordered_map, stack, queue// STL의 vector는 앞에 요소를 삽입하거나 삭제 할수 없습니다. 1. 특징#include #include #include // 배열과 유사한 자료구조, 연속된 메모리using namespace std; int main(){list s;vector s; // 함수 이름은 변하지 않기에 자료 구조 형만 변경해주면 됨. s.push_back(1);s.push_back(2);s.push_back(3); int n = s.pop_back(); // error. 제거만 하고 리턴안함 int n = s.back(); // ok 리턴만 제거안됨..
STL (Standard Template Library) 1. 소개C++ 98/03 STL 처음 소개됨 자료구조를 나타내는 컨테이너, 알고리즘 함구, 반복자, 함수 객채등 C++ 11/14멀티 쓰레트, atom, 스마트 포인터, regex, function, bind C++ 17/20Boost 라이브러리 내용이 많이 추가됨filesystem, optional, string_view, arry_view, range
String 클래스 만들기 (making String) 1. 기능 정의 #include using namespace std; int main(){String s1 = "hello";cout
대입연산자 (assignment operator) 1. 개념 class Point{private:int x, y;public:Point(int a = 0, int b = 0) : x(a), y(b) {}void print() const { cout
스마트 포인터 (Smart Pointer) 다른 타입의 포인터 역활을 하는 객체를 smart pointer 라고 합니다.-> 연산자와 * 연산자를 재정의해서 다른 타입의 포인터 역활을 하는 객체를 무엇이라고 하나요(영어, 소문자로 적어 주세요) ? 스마트 포인터 1. 개요 class Car{private:int color;public:~Car() { cout ())->Go// ( 2000 ) ->Go(*p).Go(); // p.operator*() // Block 을 벗어 날때 Ptr의 소멸자가 호출됨., 소멸자에 delete해두면 굳이 delete하지 않아도 자동으로 관리가 됨. } // 임의의 개체가 다른 타입의 포인터 역할을 하는 것// 대부분의 스마트 포인터는 참조 계수 기법을 사용합니다. 또한,..
함수 객체(function object, fonctor) class Plus{public:int operator()(int a, int b){return a + b; }};경int main(){Plus p;cout
증가/감소 연산자 재정의 class Integer{private:int value;public: Integer(int n = 0) : value(n) {}void print() const { cout
cout & ostream능 1. cout의 원리 int main(){int n= 10;double d = 3.4; cout