함수가 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;
}
'컴퓨터' 카테고리의 다른 글
2-3 레퍼런스(Reference)의 이해 (0) | 2019.04.05 |
---|---|
1-5. 이름공간(namespace)에 대한 소개 (0) | 2019.04.05 |
1-3. 디폴트(Default) 매개 변수 (0) | 2019.04.05 |
1-2. 함수 오버 로딩(Function Overloading) (0) | 2019.04.04 |
1-1. printf와 scanf를 대신하는 입/출력 방식 (0) | 2019.04.04 |