2012년 독서 목록
static vs. extern
static: 함수 밖에서 변수의 첫번째 declaration에 static이 붙으면 internal linkage. (translation unit 내에서 유일하다)extern: 함수 안에서 선언되면 외부에 definition이 있음. 함수 밖에서 첫번째 declaration에 extern이 붙거나 아무것도 없으면 external linkage. (전체 program 내에서 유일하다)one-definition rule이 적용되는 범위가 다름. storage는 같음. 첫번째 declaration이 static이 아니면 프로그램 내 여러 파일에서 definition이 포함된 header를 include할 경우 링커에서 multiple definition 에러 발생.
- 2012/02/28 20:25 에 작성