Notice
Recent Posts
Recent Comments
Link
250x250
반응형
광어네 맛집
[Objective - C] #define 이란? 본문
728x90
반응형
오늘 포스팅은 define이라는 것을 알아 볼 예정!
define이 Swift에서는 typealias 인줄 알았지만?
좀 다른 개념이었음

그럼 define이 뭐죠??
먼저 Objective C 에서도 마찬가지로 typedef이라는
키워드를 제공해주는데 사용은 다음과 같이 사용합니다!
typedef [type] [name];
예를 들어서 아래처럼 사용할 수 있음!
// 선언
typedef NSString 글자;
// 사용
글자 *name = @"가나다라";
이외의 것들은 다른 포스팅에서 알아보고
#define은 매크로 상수라고 선언한 상수를 고대로 전달해주는 거라고 합니다
// 먼저 자동완성은 다음과 같이 나옵니다
#define [macro]
그럼 사용은??
이렇게 쓸 수 있음!
#define RGB(r, g, b) [UIColor red:r/255.0f green:g/255.0f blue:b/255.0f alpha:1.0f]
그럼 typedef이랑 별반 차이 없네? 할 수도 있지만
typedef는 type을 가지고 간편한 이름을 쓰지만
define의 경우 광어 = 생선 아닌 사람! 이렇게 만들 수 있는 거임!
그러니께 A를 에이라 부르든 1/2를 분수라 부르든 범위가 넓게 사용됨!
그럼 또 define만 계속 쓰면 되는거 아니야?
하겠지만 그건 또 아님!
define을 사용하다보면 컴파일 에러가 뜨지 않지만
런타임에서는 에러가 뜬다는...
Objective C자체가 Swift랑 성격이 조금 달라서
define을 쓸 경우 안전하지 않다는 결론입니다!
그러니 define 보다는 다른 걸 찾아서 써보면 좋을 듯 해요!
오늘도 화이팅!
728x90
반응형
'Objective-C [레거시 뿌수기!] > Objective-C' 카테고리의 다른 글
[Objective C] self & _ 비교 (0) | 2022.04.22 |
---|---|
[Objective C]UIButton BackgroundColor (0) | 2022.04.21 |
[objective - C] 반복문 (0) | 2022.04.07 |
[Objective - C] AddTarget swift와 차이점 (0) | 2022.04.05 |
[Objective - C]Block & 클로저 (공부용) (0) | 2022.04.04 |