ProgrammingLang/c++ 31

[매크로] macro 사용시 유용한 것

# 의 의미 매크로에서 # 연산자는 문자열로 치환 시켜주는 연산자 입니다. 아래 코드에서 TEST\n은 define에서 "TEST\n" 으로 치환이 됩니다. 1) 기본 #include #define PRINT(s) printf(#s) int main() { PRINT(TEST\n); } >TEST 2) 응용 가변 인자를 사용하여 macro를 다양하게 만들기 define 선언 부분에서 가변인자는 ... 으로 표시 되며 정의 부분에서는 ##__VAR_ARGS__ 와 mapping이 됩니다. 가변 인자 참고 사이트 - https://jhnyang.tistory.com/298 #include #define PRINT(s, ...) printf(#s, ##__VA_ARGS__) int main() { PRINT(..

ProgrammingLang/c++ 2021.07.03

[C++ 개발자되기] 18. std::vector 기본 사용법

1. Vector 란? - 동적으로 확장/축소가 가능한 동적 배열(dynamic array)로 구현되어 있습니다. 2. Vector 메모리 구현 방식 - 일반적인 배열처럼 개체들을 연속적인 메모리 공간에 저장 합니다. 3. Vector 접근 방식 - iterator 를 통한 접근이 가능 합니다. - position index(operator [])로도 접근이 가능 합니다. 4. Vector Heder #include 5. Vector method 1) 생성자 method std::vector v1; empty vector 생성 std::vector v2(4, 100); size 4에 초기값 100으로 vector 생성 std::vector v3(v2.begin(), v2.end()); iterator를 ..

ProgrammingLang/c++ 2020.03.27

[C++ 개발자되기] 17. std::cout 출력 포맷 변경 iomanip

>>[C++ 관련 모든 글 보기] 1. std::cout 출력 포맷 변경 방법 c++ 에서는 iomanip에서 제공하는 함수를 사용하여 포맷을 변경 할 수 있습니니다. iomanip는 Input Output Manipmanipulation이라르 뜻 입니다. 2. 필요 헤더 #include 3. 사용법 - std::cout 에 포맷을 먼저 세팅 합니다. 그 후 표현할 정보를 입력 합니다. - 다음 코드에서 std::hex 로 표현 할 포맷을 세팅 합니다. std::cout

ProgrammingLang/c++ 2020.03.18

[C++ 개발자되기] 16. smart pointer

개요 c++에서의 smart-pointer가 무엇인지 살펴본다. Smart pointer란? - 포인터처럼 동작하는 클래스 템플릿으로, 사용이 끝난 메모리를 자동으로 해제해 줍니다. 사용 방식 생성 - smart_pointer에 자료 형을 동적 할당 소멸 - 클래스 이기때문에 사용이 끝나면 소멸자가 알아서 메모리 해제하고 사라짐 Ex) - smart_pointer sp = new int(5); Smart pointer 좋은점 개발하다 보면 메모리 할당 후 까먹는 경우가 매우 많다 그러나 smart pointer를 사용하면 이런 걱정을 안해도된다. , 다만 해제된 smart pointer 사용하는 헤프닝이 발생할 수는 있다. Smart pointer 종류 및 핵심 개념 1. unique_ptr - uniq..

ProgrammingLang/c++ 2020.02.24

[C++ 개발자되기] 14. millisecond시간 구하기

>>[C++ 관련 모든 글 보기] 1. 목표 millisecond단위 까지 시간 구하기, 사용하는 함수는 C함수 입니다. 2. 필요 헤더 1) #include - localtime_r() 사용을 위해 필요 - ftime() 에서 필요 - strftime() 에서 필요 2) #include - struct timeb 에서 필요로함 3. 필요 함수 1) void ftime(struct *timeb); - millisecond 까지 시간을 구하는 함수 2) struct tm *localtime_r(const time_t *timep, struct tm *result); - 지역 시간을 구하는 함수 4. 구조체 정보 1) struct tm #include // C++ 에서는 struct tm { int tm_s..

ProgrammingLang/c++ 2020.02.02