[C++] 복습(1) - Inline Function

박민주·2021년 8월 18일
0

C++

목록 보기
1/3
post-thumbnail

학기 중에 C프로그래밍을 하고 나서
앞으로 컴퓨터 그래픽스를 공부하거나, 언리얼 엔진을 다루기 위해 C++을 배워야겠다고 생각했다

그리고 백준이나 프로그래머스 문제들을 풀 때 주로 C를 사용했었는데
C++이나 Phyton 같이 다른 언어로도 해보면서
언어들의 장단점을 직접 느껴보고 싶었기 때문에 C++ 공부를 하게 되었다

교재는 '윤성우의 열혈 C++프로그래밍'으로 일주일에 챕터 2개씩 하고 있고,
방식은 스터디원과 함께 교재를 읽고 실습하고 교재 문제를 푸는 것이다

Chatper 6까지 끝낸 지금 시점에서
velog에 남기면서 복습을 해보려고 한다

모든 이론을 남기지는 않고 기억해야 할 것 같았던 부분들을 위주로 남길 것이다

Inline Function
- 인라인함수는 함수가 실행될 때 함수의 정의 부분으로 찾아가지 않고,
함수의 호출 부분에 함수의 사본(컴파일된 함수 코드)이 직접 삽입되어 실행되는 함수이다
- 헤더파일(.h)를 따로 만드는 경우, 인라인함수는 헤더파일에 정의 부분까지 포함되어야 한다
- 컴파일 할 때 헤더파일에 포함되어 있는 함수명이나 매개변수 개수를 통해 바로 컴파일 에러를 판단하기 때문이다
- 인라인함수는 컴파일 시 함수 정의의 사본이 필요한 셈이므로 헤더파일에 정의가 없으면 컴파일 에러가 난다

C프로그래밍에서 보통 헤더파일을 만들 때에는 함수 원형 선언된 것만 봤었는데
특이하게 인라인함수는 헤더파일에 정의도 포함되어야 한다고 해서 기억에 남았다

추가로 인라인함수는 프로그램의 실행 속도를 높이기 위해 사용될 수 있다고 한다.
함수가 실행될 때 함수 정의 부분으로 점프했다가 다시 돌아오고 하는 과정에서
사용되는 시간을 단축시킬 수 있는 것 같다.

profile
Game Programmer

0개의 댓글