1
인라인 함수란 무엇인가?
인라인 함수는 함수 호출의 오버헤드를 줄이기 위해 컴파일러에게 함수 호출 부분을 함수의 실제 코드로 직접 대체(inlining) 해 달라고 요청하는 함수입니다.
오버헤드(Overhead)함수는 코드 재사용과 모듈화에 큰 이점을 주지만, 모든 함수 호출에는 약간의 오버헤드(Overhead)가 생깁니다. 호출마다 매개변수 스택 처리, 함수 점프, 복귀 같은 추가 작업이 필요하기 때문입니다.
오버헤드와 인라인 함수를 중심으로 인라인 함수의 판단 흐름을 읽습니다.
인라인 함수는 함수 호출의 오버헤드를 줄이기 위해 컴파일러에게 함수 호출 부분을 함수의 실제 코드로 직접 대체(inlining) 해 달라고 요청하는 함수입니다.
오버헤드(Overhead)inline 키워드는 컴파일러에게 인라인화를 요청하는 힌트(hint) 일 뿐, 강제하는 지시가 아닙니다.
인라인 함수(Inline Function)일반적으로 함수는 .cpp 파일에 정의하고, 해당 함수의 원형(declaration)은 .h 또는 .hpp 헤더 파일에 선언합니다.
인라인 함수