-
<C++> C++ 입문 Day3유물/C, C++ 2021. 11. 17. 23:16728x90
📌 #include <그림으로 배우는 C++ (Mana Takahashi 저 / 서재원 역 / 영진닷컴)>
Lesson 7 (함수)
인라인 함수
- 인라인 함수는 컴파일러에 의해 호출 부분에 직접 기록되므로, 전체적으로 속도가 향상됨
inline int max(int x, int y) { if (x > y) return x; else return y; }
함수 선언
- 정의되지 않은 함수를 호출하려면 함수 프로토타입을 선언해야 함
Default Argument (기본 인수)
- 기본 인수는 함수 선언 혹은 함수 프로토타입 선언시 한 번만 지정함.
- 함수 프로토타입 선언에서 기본 인수를 지정했다면, 함수 본체를 정의할 때는 기본 인수를 지정할 수 없음.
- 기본 인수는 오른쪽부터 정의해야 함
void func(int a, int b, int c, int d = 2, int e = 10)
함수 오버로드
- 비슷한 함수 여러 개를 같은 이름으로 중복 정의(오버로드)해 두면, 그 이름과 일치하는 함수 중 인수의 형(type)과 개수가 일치하는 함수가 자동적으로 호출됨
함수 템플릿
template <class T> T maxt(T x, T y) { if (x > y) retun x; else return y; }
- 다형성: 오버로드와 템플릿 처럼 하나의 이름이 상황에 맞추어 다른 기능을 가지는 것
Lesson 8 (포인터)
포인터의 원리
- 포인터: 주소를 저장하는 특수한 변수
int a; int* pA; a = 5; pA = &a;
- 간접참조연산자: 포인터를 통해 변수의 값 역추적
*pA
레퍼런스
int a; int& rA = a;
- 레퍼런스의 주소는 변수의 주소와 같음
Lesson 9 (배열)
배열과 포인터의 관계
- 배열명은 배열 첫 번째 요소의 주소를 저장하는 포인터와 같은 기능을 함
- 배열 첫 번째 요소의 주소: test = &test[0]
- 배열 첫 번째 요소의 값: *test = test[0]
- 배열명에 다른 주소를 대입하는 것은 불가능
문자열과 배열
- 문자열 마지막에는 '\0' (Null character)가 들어감
- ""를 사용한 문자열 저장은 초기화시킬 때만 사용 가능
char str[6] = "Hello"; // str = "Hi";
표준 라이브러리 함수
#include <csting>
728x90'유물 > C, C++' 카테고리의 다른 글
<C++> C++ 입문 Day2 (0) 2021.11.16 <C++> C++ 입문 (0) 2021.11.16 <C언어> 자료형, 문자열 (0) 2021.11.08