함수는 인자 값을 복사하고, 함수로 이동한 다음, 실행을 마치고 다시 돌아오는 반면,

인라인 함수는 컴파일 시점에 기계어 코드를 치환하기 때문에 성능 하락이 없다.


다만 인라인 함수를 사용하면 코드가 길어질 수 있기 때문에, 보통 짧은 함수들에 사용한다.


다른 파일에 있는 인라인 함수를 사용할 때는 헤더 파일 내에 구현부가 꼭 있어야 한다.

(같은 파일 내에는 상관 없다.)


위에서 인라인 함수는 "컴파일 시점"에 기계어 코드를 치환한다고 했는데, 헤더에 선언하고 소스에 구현한다면 이미 컴파일된 소스에서 어디가 인라인 함수인지 알 수가 없기 때문이다.

'프로그래밍 > C++' 카테고리의 다른 글

후위 반환 형식 trailing return type/ suffix return type  (0) 2017.10.08
함수를 못 쓰게 하기  (0) 2017.10.08
함수 오버로딩  (0) 2017.10.08
디폴트 파라미터  (0) 2017.10.08
printf 형식지정자  (0) 2017.10.03

+ Recent posts