inline 판단 기준

inline은 호출 제거를 요청하는 작은 함수용 힌트다

키워드를 붙여도 최종 결정은 컴파일러가 합니다. 함수의 크기, 호출 빈도, 정의가 보이는 위치가 함께 맞아야 효과를 기대할 수 있습니다.

요청 호출 지점에 코드 삽입 시도
전제 호출부에서 정의를 볼 수 있음
inline 한계 코드 크기 증가와 캐시 부담
inline 후보

짧고 자주 호출되는 함수

`return a + b;` 같은 작은 계산이 반복문 안에서 자주 호출될 때 적합합니다.

주의 후보

큰 함수와 복잡한 제어 흐름

본문이 크거나 분기가 많으면 복사된 코드가 늘어 성능이 오히려 흔들릴 수 있습니다.

대안

매크로 대신 타입 안전한 함수

매크로 치환보다 인라인 함수가 타입 검사와 디버깅 면에서 더 안전합니다.

inline 전 점검

붙이기 전에 보는 네 가지 질문

작은가

한두 줄 계산처럼 호출 오버헤드가 더 커 보이는지 봅니다.

자주 부르나

루프 내부나 성능 민감 경로에서 반복 호출되는지 확인합니다.

정의가 보이나

헤더에 정의되어 호출하는 번역 단위가 본문을 볼 수 있어야 합니다.

커지지 않나

복사된 코드가 많아져 캐시 효율을 해치지 않는지 점검합니다.