컴퓨터
1-4. 인-라인(in-line) 함수
sayyesdoit
2019. 4. 5. 17:06
함수가 inline화 되었다.
함수 호출 문장이 함수의 몸체 부분으로 완전히 대치돼 버리는 현상을 가리켜 "함수가 inline화 되었다."라고 표현한다.
함수 호출은 스택 메모리 공간의 할당도 요구하며 시간도 많이 요구된다. 함수를 inline화 할 경우, 함수 호출을 안 해도 되기 때문에 스택 메모리 공간을 절약하고 시간도 벌 수 있다.
C의 경우, 매크로 함수가 인라인 함수이다. 이는 전처리기에서 처리된다.
C++에서는 좀 더 세련된 방법으로 함수를 inline화 할 수 있다. 이는 컴파일러에 의해서 처리된다.
#include <iostream>
inline int SQUARE(int x)
{
return x * x;
}
int main(void) {
std::cout << SQUARE(5) << std::endl;
return 0;
}