Swift
Swift) @ 어트리뷰트 키워드 와 @discardableResult
Jimmy Youn
2022. 4. 13. 22:16
1. @ 어트리뷰트 키워드
: 추가적인 정보를 제공하는 키워드 이다.
컴파일러에게 추가적인 정보를 알려주는 역할을 하는 2가지 경우
1) 선언에 추가정보 제공
@available(iOS 10.0) // -> 선언에 추가정보 제공
class Something {
}
2) 타입에 추가정보 제공
func doSomething(completion : @escaping () -> ()) { // @escaping 타입에 추가정보 제공
}
2. @discardableResult
: 함수의 리턴값을 활용하지 않는 경우에 사용한다.
1) 일반적인 함수 선언 경우
func makeSomething() -> String {
...
return "Car"
}
makeSomething() // 노란색으로 결과값을 사용하지 않는다고 워닝이 뜬다.
_ = makeSomething() // 워닝창을 없애기 위해서 결과값의 사용을 생략한다는 의미에서 _ (와일드카드) 를 사용하면 된다.
2) @discardableResult 어트리뷰트의 활용
@discardableResult
func makeSomething() -> String {
...
return "Car"
}
makeSomething() // @discardableResult 어트리뷰트를 사용하면 결과값을 사용하지 않아도 된다고 컴파일러에게 정보를 제공해줘서 경고창이 뜨지 않는다.