c++문법(10)
-
[C++] STL 개념 쉽게 이해하기
STL 개념을 명확하게 이해하고 가봅시다. 자세한 예시보단 큰 틀을 파악하는 것을 우선으로 하는 포스팅입니다. 목차 📃 STL 개념 📃 STL 컨테이너 📃 STL 반복자 📃 STL 알고리즘 STL 개념 📌 개념 STL(Standard Template Library). STL은 데이터 저장, 접근, 알고리즘 실행을 쉽고 빠르게 하는 하나의 틀입니다. 비슷한 데이터를 한데 묶을 수 있게 하며(데이터 추상화), 그 데이터를 대상으로 특정 알고리즘을 언제 어디서든 계속 수행할 수 있도록(코드 재사용) 합니다. 📌 일반화 프로그래밍 C++가 가지는 주요 특징 중 하나가 일반화 프로그래밍입니다. 데이터를 중심으로 돌아가는 객체 프로그래밍과 달리 일반화 프로그래밍은 알고리즘을 중심으로 돌아갑니다. 어떤 데이터가 오든..
2022.07.20 -
[C++] 네임스페이스(namespace) 개념 및 코드
이번 포스팅에선 네임스페이스에 대해 알아보겠습니다. 네임 스페이스(namespace): 내부 식별자에 사용될 수 있는 유효 범위를 제공하는 선언적 영역 일종의 집단 영역이라고 볼 수 있습니다. 개발 환경 : VSCode, Windows 10 기본 개발 세팅은 다음과 같습니다. #include #include #include using namespace std; int main() { return 0; } 📌 네임스페이스(namespace) 정의 및 선언 네임스페이스는 일종의 영역입니다. "해당 영역에 있는 변수, 함수, 구조체... 등은 네임스페이스를 앞에 명시했을 때만 사용할 수 있어!" 따라서 변수, 함수, 구조체, 클래스 등 네임스페이스에 있는 모든 것들은 네임스페이스로 구분할 수 있습니다. 네임스..
2022.06.28 -
[C++] 인라인(inline)함수 와 매크로(define)함수
이번 포스팅에선 인라인 함수와 매크로 함수에 대해 알아보도록 하겠습니다. 인라인 함수: 모든 코드를 호출된 자리에서 바로 삽입해서 연산을 진행합니다. 매크로 함수: #define 선행처리 지시문에 함수를 정의하여 동작합니다. 개발 환경 : VSCode, Windows 10 기본 개발 세팅은 다음과 같습니다. #include #include #include using namespace std; int main() { return 0; } 📌 인라인 함수 인라인 함수가 필요한 이유가 뭘까요? 그 이유는 함수 호출 과정에 있습니다. 본래 함수 호출은 다음과 같은 과정을 거칩니다. (1) 함수 호출 (2) 스택에 매개변수+반환 주소값 저장 (3) 프로그램 제어가 함수 위치로 날아와 지역 변수 저장 (4) 코드 ..
2022.06.24 -
[C++] 함수 Basic - 참조자, 디폴트 인수, 오버로딩
이번 포스팅에선 함수 참조자, 디폴트 인수, 오버로딩에 대해 알아보도록 하겠습니다. 참조자: &를 말합니다. 대상의 원본을 직접 가져오는 역할을 합니다. 디폴트 인수: 함수의 기본으로 설정된 초기 인수를 말합니다. 오버로딩: 같은 이름의 함수를 중복하여 정의하는 것을 말합니다. 개발 환경 : VSCode, Windows 10 기본 개발 세팅은 다음과 같습니다. #include #include #include using namespace std; int main() { return 0; } 📌 참조자(&) 참조자는 특정 변수의 실제 이름 대신 사용할 수 있습니다. 주로 크기가 큰 구조체와 같은 데이터를 함수의 인수로 전달할 때 사용합니다. (1) 참조자 선언 참조자는 타입을 식별하기 위해 사용하는 식별자 ..
2022.06.24 -
[C++] 함수 Basic - 정의, 인수 전달, 포인터
이번 포스팅에선 함수에 대해 알아보도록 하겠습니다. 함수 : 하나의 목적으로 수행하고, 하나의 결괏값을 내놓는 기능을 합니다. int형끼리 더하고 싶을 때, 문자열을 특정 방법으로 편집할 때 등 특정 목적을 위해 함수를 정의해서 사용합니다. 개발 환경 : VSCode, Windows 10 기본 개발 세팅은 다음과 같습니다. #include #include #include using namespace std; int main() { return 0; } 📌 함수의 정의 및 선언 먼저 간단한 함수를 구현한 코드입니다. #include #include #include using namespace std; int Substract(int, int); int main() { int result; result = ..
2022.06.23 -
[C++] 구조체(structure type) 개념 및 활용
이번 포스팅에선 구조체에 대해 알아보도록 하겠습니다. 구조체 : 사용자 정의 타입 다양한 타입의 변수 집합을 하나의 타입으로 나타내는 것이 구조체입니다. 예를 들어, 책 제목/ 저자/ 가격의 집합을 하나의 book 타입으로 정의하는 것이 구조체입니다. 개발 환경 : VSCode, Windows 10 기본 개발 세팅은 다음과 같습니다. #include #include #include using namespace std; int main() { return 0; } 📌 구조체 선언하기 구조체는 main 함수 밖에서 선언합니다. 이번 포스팅에선 Book이란 이름으로 선언하도록 하겠습니다. struct 구조체이름 {}; Book 구조체 선언 struct Book { char title[30]; char auth..
2022.06.17