Swift
-
HashableSwift 2021. 12. 17. 15:27
안녕하세요. 오늘은 Hashable Protocol에 대해서 알아보도록 하겠습니다. https://developer.apple.com/documentation/swift/hashable/ Apple Developer Documentation developer.apple.com 와.. 한 문장에 hash라는 단어가 3번이나 쓰였습니다. hash가 무엇인지 알고 가야하겠네요. https://ko.wikipedia.org/wiki/해시_함수 해시 함수 - 위키백과, 우리 모두의 백과사전 이름을 0~15 사이의 정수값으로 매핑하는 해시 함수의 예. “John Smith”와 “Sandra Dee”라는 두 키 사이에 충돌이 존재한다. 해시 함수(hash function) 또는 해시 알고리즘(hash algorith..
-
String은 왜 Int로 Subscript 되지 않을까?Swift 2021. 12. 15. 23:51
안녕하세요. 최근 들어 Swift로 코딩테스트 준비를 하고 있습니다. 애초에 Swift가 코딩테스트에 적합한 언어는 아니라고 생각하지만.. 저는 iOS 개발자니깐요. 아무튼, Swift로 문제를 풀다보면 불편한 부분이 많습니다. Data Structure도 하나하나 만들어줘야 하고 아무튼 많습니다. 오늘은 그 중에서도 가장 저를 당황케 했던 String 처리를 다뤄보겠습니다. 저는 원래는 파이썬을 사용했었기 때문에 let input = readLine()! // String입니다 print(input[0]) 이런 식으로 String의 각 문자에 접근을 하려고 했습니다. 그런데 이러한 방식으로 접근하려 하니 String은 Int형으로 subscript가 안된다고 에러를 뱉어냅니다. 이럴 때는 공식 문서를 ..
-
class 와 struct 그리고 enumSwift 2021. 12. 14. 17:30
안녕하세요! 오늘은 매일매일 사용하면서도 헷갈리는 친구들이죠?? class(클래스)와 struct(구조체)를 알아보도록 할게요! 추가적으로 enum(열거형)도 같이 비교해보도록 하겠습니다~ 우선 가장 많은 분들이 알 거라고 생각되는 class부터 살펴보도록 하겠습니다. 1. class 가장 큰 특징은 참조타입(call by reference)이라는 거에요. 참조타입이 뭐냐! 그럼 우선 iOS 메모리 구조를 알아야하는디요 대략적으로 이렇게 생겼습니다! 메모리에 관해서도 공부하고 설명해드리고 싶지만 그것도 양이 엄청나게 많기 때문에 나중에 시간이 나면 다루도록 하겠습니다ㅠㅠ 여기서 저희가 유심히 지켜봐야할 부분은 Stack 영역과 Heap 영역이에요 우리가 참조 타입 인스턴스를 만들면 Heap 영역에 할당이..