반응형
Notice
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 빅데이터
- 머신러닝
- 컴퓨터과학
- 보안
- 파이썬
- 자료구조
- 데이터분석
- 코딩
- 2
- 컴퓨터비전
- 데이터베이스
- 소프트웨어공학
- 인공지능
- 웹개발
- 프로그래밍언어
- 소프트웨어
- 딥러닝
- 알고리즘
- 사이버보안
- 클라우드컴퓨팅
- 데이터구조
- 컴퓨터공학
- 네트워크
- 자바스크립트
- I'm Sorry
- 데이터과학
- Yes
- 네트워크보안
- 버전관리
- 프로그래밍
Archives
- Today
- Total
스택큐힙리스트
"extern const" 대 "extern" 만 본문
반응형
전역 변수를 만드는 두 가지 방법을 보았는데, 차이는 무엇이며 언제 각각을 사용해야 할까요?
//.h
extern NSString * const MyConstant;
//.m
NSString * const MyConstant = @MyConstant;
와
//.h
extern NSString *MyConstant;
//.m
NSString *MyConstant = @MyConstant;
답변 1
전자는 상수에 이상적인데, 가리키는 문자열을 변경할 수 없기 때문입니다:
//.h
extern NSString * const MyConstant;
//.m
NSString * const MyConstant = @MyConstant;
...
MyConstant = @Bad Stuff; // << 얘! 컴파일러 오류
그리고
//.h
extern NSString *MyConstant;
//.m
NSString *MyConstant = @MyConstant;
...
MyConstant = @Bad Stuff; // << 컴파일러 오류 없음 =\
간단히 말해서, const (전자)를 기본으로 사용하세요. 컴파일러가 이후에 변경하려고 하면 알려줄 것입니다. 그럼 여러분은 이것이 여러분의 실수인지, 아니면 가리키는 객체가 변경될 수 있는지 판단할 수 있습니다. 이것은 많은 버그와 머리 긁힘을 막아주는 좋은 안전장치입니다.
다른 변형은 값을 위한 것입니다:
extern int MyInteger; // << 값은 언제든지 변경될 수 있음
extern const int MyInteger; // << 적절한 상수
답변 2
제목: extern const 대 extern만: 차이 및 사용 시 고려사항에 대한 이해서론:
프로그래머들에게 친숙한 C 프로그래밍 언어에서는 extern과 extern const라는 키워드를 사용하여 외부에 선언된 변수의 참조를 표시합니다. 이 문서에서는 이 두 키워드 간의 차이를 설명하고, 각각을 적절히 사용해야 하는 상황을 살펴보겠습니다. 우선 검색 엔진 최적화를 고려하여 주요 키워드를 사용한 제목을 설정하였습니다.
1. extern const 및 extern의 기능과 의미
extern 키워드는 변수 또는 함수가 이미 다른 소스 파일에서 정의되었음을 알려줍니다. 따라서 외부에서 정의된 변수나 함수를 현재 소스 파일에서 참조할 수 있게 됩니다. 반면, extern const는 선언된 변수가 읽기 전용일 때 사용됩니다. extern const를 사용하면 해당 변수는 변경할 수 없으며, 읽기만 가능한 상수로 사용됩니다.
2. extern const 대 extern: 적절한 사용 시나리오
2.1. 상수 사용 시:
만약 여러 개의 소스 파일에서 동일한 상수 값을 참조해야 한다면, extern const를 사용하여 이를 선언해야 합니다. 이렇게 함으로써 상수 값을 여러 번 정의하는 것을 피할 수 있습니다. 예를 들어, 프로젝트에서 π(원주율)를 사용하고, 이 값을 여러 곳에서 읽기만 하려는 경우 extern const를 사용할 수 있습니다.
2.2. 변수 사용 시:
변수를 여러 소스 파일에서 참조할 경우 extern을 사용하여 변수에 대한 참조를 정의합니다. 이렇게 하면 코드의 재사용성과 유지 보수성이 향상됩니다. 예를 들어, 프로젝트에서 전역 변수로 현재 유저의 성명을 사용해야 한다면, extern을 사용하여 해당 변수를 참조할 수 있습니다.
3. 두 키워드 사용 시 주의사항
3.1. 중복 정의 방지:
extern const와 extern을 혼용하여 사용할 때, 동일한 이름을 가진 변수나 함수를 중복 정의하는 것을 피해야 합니다. 이로 인해 컴파일러에서 충돌이 발생하거나 예기치 않은 동작이 발생할 수 있습니다.
3.2. 효율성 고려:
extern const와 extern은 코드 구조를 단순하게 만들기 위한 목적으로 사용되어야 합니다. 불필요한 변수나 상수의 과도한 외부 참조는 코드를 복잡하게 만들 수 있으므로, 사용 시에는 신중하게 판단해야 합니다.
결론:
extern const와 extern은 C 프로그래밍에서 외부 변수와 상수를 참조하는 데 사용되는 키워드입니다. extern const는 읽기 전용 상수를 선언할 때 사용되고, extern은 변수나 함수를 사용할 때 사용됩니다. 이러한 키워드들은 코드의 재사용성과 유지 보수성을 향상시키지만, 주의사항을 유념하여 적절하게 사용해야 합니다. 키워드 간의 차이와 적절한 사용 시나리오에 대한 이해를 바탕으로 개발자는 더 효율적이고 품질 높은 C 프로그래밍을 구현할 수 있습니다.
반응형
Comments