블로그 이미지
공부할 때 정리 장소로 쓰거나 웹서핑할때 메모 할 때 쓰거나, 개인적인 생각을 기록하기 위해서 사용 되는 블로그 입니다.
최익필

Recent Comment

Category

  • 335,254total
  • 157today
  • 361yesterday
2009/06/29 14:02 IT책 정리실/C++ Template

인라인이 무엇인지 알기(exceptional C++ 에 무척 자세히 나온다: 항목 25 : inline 해부 http://www.ikpil.com/821)기 때문에 생략 한다.

템플릿의 특성상 번역단위마다 코드 인스턴스화가 일어 나지만, 동일한 인스턴스일 때는 단 1개의 정의로 컴파일러는 관리 한다. 그러므로 대부분의 컴파일러에서 "재정의 오류"가 일어나지 않는다. 일어 나는 컴파일러도 있다고 책에 적혀 있지만, 그건 프로그래머 잘못이 아니다. .. 그러므로 프로그래머는 당장 컴파일러를 바꾸어야 한다.(이건 책에 내용이 없다 : ) )

하여튼, 번역단위마다 코드 인스턴스화가 일어 난다고 해서 자동으로 인라인이 된다고 착각 할 수 있다. 이 착각은 인라인과 동일하게 번역 단위마다 코드 붙이기가 일어 난다고 생각 하기 때문이다.

다시 말하지만 이건 착각이다. 그러므로 함수 템플릿이라 하더라도 빠른 호출을 하기 위해선 inline 키워드를 써 주어야 한다.

저작자 표시
posted by 농사를 짓는 게임 프로그래머 최익필

Trackback http://ikpil.com/trackback/1021 관련글 쓰기

댓글을 달아 주세요

  1. 2009/06/30 09:00  Addr  Edit/Del  Reply

    비밀댓글 입니다