[STL] std::negate
C++/STL2024. 6. 23. 22:30[STL] std::negate

1. 개요std::negate는 C++11부터 도입된 표준 라이브러리의 일부이며, 함수형 프로그래밍 스타일을 지원하는 함수 객체(functor)이다. 단항 연산자로 입력된 값을 부정(negation)하는 역할을 한다. 즉, 입력된 값의 부호를 반대로 바꿔준다.2. 사용 예시#include #include // std::negateint main() { std::negate neg; // int 타입의 부정 함수 객체를 선언 int x = 10; int y = neg(x); // -x를 계산하여 y에 할당 std::cout 2.1. 결과 출력x = 10, y = -103. 참고사항3.1. 관련 문서https://en.cppreference.com/w/cpp/utility/functi..

[STL] std::vector
C++/STL2024. 6. 23. 22:23[STL] std::vector

1.개요std::vector는 동적 배열(dynamic array) 컨테이너이다. 요소들을 선형으로 저장하며, 인덱스를 통해 각 요소에 접근할 수 있다. 크기를 동적으로 조절할 수 있는 배열로, 메모리 내에 연속적으로 저장된다.2. 주요 멤버 함수push_back(): 벡터 끝에 요소를 추가한다.pop_back(): 벡터의 마지막 요소를 제거한다.size(): 벡터에 저장된 요소의 개수를 반환한다.begin(), end(): 벡터의 시작과 끝을 가리키는 반복자를 반환한다.resize(): 벡터의 크기를 조정한다.3. 참고 사항3.1. 비용메모리 할당 및 해제 비용이 추가될 수 있으므로, 성능 요구 사항을 고려하여 사용3.2. 관련 문서https://en.cppreference.com/w/cpp/conta..

[STL] std::ranges::transform
C++/STL2024. 6. 23. 22:08[STL] std::ranges::transform

1. 개요std::ranges::transform 함수는 C++20부터 도입된 범위 기반 알고리즘 중 하나로, 주어진 입력 범위의 각 요소에 대해 지정된 변환 작업을 수행하고, 변환된 요소들을 출력 범위에 저장한다.2. templatetemplate constexpr OutputRange transform(InputRange&& inputRange, OutputRange&& outputRange, UnaryOperation op);InputRange: 변환할 입력 범위로, 범위의 첫 번째 요소의 시작과 끝을 나타낸다.OutputRange: 변환된 요소들을 저장할 출력 범위로, 반드시 OutputIterator의 요구사항을 충족해야 한다.UnaryOperation: 각 요소에 적용할 단항 연산(함수 객체 ..

[C++] 람다(Lambda) 함수
C++/C++2024. 6. 23. 21:43[C++] 람다(Lambda) 함수

1. 람다(Lambda) 함수캡처를 통해 lambda 함수는 자신이 생성된 시점에서의 외부 변수의 값을 유지하거나 사용한다. 일반적으로 lambda 함수는 외부 변수에 대한 접근을 제한한다. lambda 함수 내에서 외부 변수에 접근하려면, 그 변수를 명시적으로 캡처해야 된다.2. [ ][]는 C++에서 람다(Lambda) 함수를 정의할 때 사용3. 캡처(Capture)3.1. 캡처(Capture)란?C++ 람다(Lambda) 함수에서 외부 변수를 내부로 가져오는 것을 말한다.3.2. 캡처(Capture) 위치대괄호([ ]) 안에 위치하며, 여기에 캡처할 변수를 지정한다.4. 사용예시[캡처위치(외부변수)](lambda 내부 변수){lambda 함수}

[CMake] CMakeLists.txt 작성
C++/CMake2024. 6. 23. 21:04[CMake] CMakeLists.txt 작성

1. root/CMakeLists.txtcmake_minimum_required(VERSION 3.5) # 최대한 높은 버전 사용project(projectName VERSION 0.1.0) # 프로젝트 이름과 버전set(CMAKE_CXX_STANDARD 20) # C++ 표준 설정set(CMAKE_CXX_STANDARD_REQUIRED TRUE) # C++ 표준 준수를 필수로 설정# CPM.cmake settings# ------------------------------------------------------------------------------file( DOWNLOAD https://github.com/cpm-cmake/CPM.cmake/releases/download/v0.38.3/C..

728x90
반응형
image