광어네 맛집

[Swift Conversting] Enum 호환 본문

Objective-C [레거시 뿌수기!]/Objective-C

[Swift Conversting] Enum 호환

Lautner Jacob 2022. 8. 29. 12:00
728x90
반응형

ObjectiveC와 Swift를 같이 사용하기 위해서는

별도의 작업이 필요한것도 있지만 조금만 바꿔주면 되는 것들도 있다

 

그 중에 하나가 Enum 타입이다

Objective C에서만 사용할 경우

typedef enum {
  CaseA,
  CaseB,
  CaseC,
  CaseD
} ServiceCase;

 

만약 Swift에서도 사용하고 싶다면

다음과 같이 선언해주면 된다

typedef NS_ENUM(NSUIntegrt, ServiceCase) {
  CaseA = 0,
  CaseB,
  CaseC,
  CaseD
};

 

기본적으로 enum type의 경우 0 이 시작점이 대부분인데

레거시 코드를 보는 입장에서는 무작정 바꾸면 안된다

 

여러 사람들이 만진 코드라서 하드 코딩이 되어 있을 수 있기 때문에

기존에 짜여진 코드를 확인한 뒤 수정하는 습관을 가져야 합니당!

 

그럼 오늘도 화이팅~

728x90
반응형