일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- PrefixSum
- effective C++
- 3D RPG
- 프로그래머스
- Project
- programmers
- Flyweight Pattern
- Gold
- solid 원칙
- SWEA
- level1
- stack
- 8-Puzzle
- two pointer
- Bronze
- trie
- Zenject
- LEVEL2
- Euclidean
- knapsack Problem
- level3
- 프로세스 상태
- BOJ
- Silver
- BFS
- Unity
- dirtyflag pattern
- binary search
- algorithm
- Modern C++
- Today
- Total
목록Modern C++ (3)
Patrick's Devlog
모든 C++ 표현에는 형식이 존재하며 value 범주에 속한다. value 범주는 표현 평가 중 임시 개체를 생성, 복사, 이동할 때 컴파일러가 따라야하는 규칙의 기초이다. C++17표준은 다음과 같이 식 값의 범주를 정의한다. 1. glvalue는 평가(evaluation)에서 개체, 비트필드 또는 함수의 ID(동일성)를 결정하는 표현 2. prvalue는 평가에서 객체나 비트 필드를 초기화하거나 표시되는 컨텍스트에 지정된대로 연산자의 피연산자 값을 계산하는 표현식 3. xvalue는 리소스를 재사용할 수 있는 개체 또는 비트 필드를 나타내는 glvalue 4. lvalue는 xvalue가 아닌 glvalue 5. rvalue는 prvalue 또는 xvalue lvalue에는 프로그램에서 액세스할 수 ..
개요 급히 Modern C++에 대해 공부해야할 일이 생겨 간단하게 인터넷을 통해서 숙지하고자 게시글을 정리한다. 자료는 TCP School에서 참고하여 정리하였으며, 좀 더 자세한 내용을 확인하고 싶으면 아래 참고 자료 링크에 들어가면 된다. 스마트 포인터? C++에서 new 키워드를 사용해 동적으로 할당받은 메모리는 반드시 delete를 사용해 해제해야 한다. C++에서는 메모리 누수로부터 프로그램 안전성을 보장하기 위해 스마트포인터를 제공한다. 스마트 포인터는 포인터처럼 동작하는 클래스 템플릿으로, 사용이 끝난 메모리를 자동으로 해제해준다. ◆ 동작 보통 new 키워드를 이용해 원시 포인터가 실제 메모리를 가리키도록 초기화한 후 원시 포인터를 스마트 포인터에 대입하여 사용한다. 정의된 스마트 포인터..
개요 시간이 지남에 따라 Modern C++가 발전하고 있는 상태이다. 내가 제대로 배운 언어는 일반 C++였으며, 조금 더 C++에 대해 깊게 공부하기 위해 간략하게 준비를 하고자 한다. 본 게시글은 계속해서 정리하는 글이 아닌, 개요만 살짝 맛보는 시간이다. Modern C++의 자세한 공부는 Effective C++의 공부가 끝나는대로 바로 진행할 예정이다. C++는 다른 언어보다 유연성이 높다. 높은 추상화(abstract)는 물론 회로 설계에도 사용가능하다. C++는 최적화된 표쥰 라이브러리를 제공한다. 이를 통해 낮은 하드웨어 기능에 액세스해 속도를 최대한으로 높이고 메모리 요구 사항을 최소화할 수 있다. 이처럼 C++은 다른 언어에 비해 메모리 접근성에 대해도 좋으며, 그만큼 좋은 성능 대비..