Swift 13

스위프트의 C++ 클래스와 교류

스위프트의 C++ 클래스와 교류 저는 C++로 작성된 중요한 수업 라이브러리를 가지고 있습니다.나는 그것들을 스위프트 코드로 다시 쓰는 것보다 스위프트 내의 어떤 종류의 브리지를 통해 사용하려고 합니다.주된 동기는 C++ 코드가 여러 플랫폼에서 사용되는 핵심 라이브러리를 나타낸다는 것입니다.사실상 저는 핵심 기능이 OS X에서 작동할 수 있도록 스위프트 기반 UI를 만드는 것입니다. 스위프트의 C++ 기능을 어떻게 부르느냐는 질문도 있습니다.이건 제 질문이 아닙니다.C++ 함수로 브리지하려면 다음이 잘 작동합니다. "C"를 통해 브리징 헤더를 정의합니다. #ifndef ImageReader_hpp #define ImageReader_hpp #ifdef __cplusplus extern "C" { #end..

programing 2023.10.27

스위프트넘버상속

스위프트넘버상속 스위프트에서 열거형을 상속할 수 있습니까?열거 상속과 관련하여 주의해야 할 규칙은 무엇입니까? 다음 테스트 코드: enum TemperatureUnit: Int { case Kelvin, Celcius, Farenheit } enum TemperatureSubunit : Temperature { } 생성하다 error: type 'TemperatureSubunit' does not conform to protocol 'RawRepresentable' 스위프트 언어에는 Structs, Enum, Class가 있습니다.Struct와 Enum은 복사를 통해 전달되지만 Class는 참조를 통해 전달됩니다.클래스만 상속을 지원하고 Enum과 Struct는 지원하지 않습니다. 따라서 질문에 답하려면..

programing 2023.10.02

%를(를) 사용할 수 없음:자르기Remainer를 대신 사용합니다."는 다음을 의미합니까?

%를(를) 사용할 수 없음:자르기Remainer를 대신 사용합니다."는 다음을 의미합니까? 확장 코드를 사용할 때 다음 오류가 발생합니다. 다른 연산자를 사용하라는 것인지 인터넷 검색을 기반으로 식의 값을 수정하라는 것인지 잘 모르겠습니다. 오류: %를(를) 사용할 수 없습니다.잘라내기잔여를 대신 사용 확장 코드: extension CMTime { var durationText:String { let totalSeconds = CMTimeGetSeconds(self) let hours:Int = Int(totalSeconds / 3600) let minutes:Int = Int(totalSeconds % 3600 / 60) let seconds:Int = Int(totalSeconds % 60) if h..

programing 2023.09.27

Swift에서 두 값 사이의 숫자를 "clamp"하는 표준 방법

Swift에서 두 값 사이의 숫자를 "clamp"하는 표준 방법 주어진: let a = 4.2 let b = -1.3 let c = 6.4 이 값들을 주어진 범위에 고정시키는 가장 간단하고 신속한 방법을 알고 싶습니다.0...5, 다음과 같이 할 수 있습니다. a -> 4.2 b -> 0 c -> 5 제가 할 수 있는 일은 다음과 같습니다. let clamped = min(max(a, 0), 5) 또는 다음과 같은 것. let clamped = (a 5) ? 5 : a) 하지만 Swift에서 이 작업을 수행할 수 있는 다른 방법이 있는지 궁금합니다. 특히 Swift 표준 라이브러리에 이러한 목적을 위해 특별히 고안된 것이 있는지 여부를 알고 싶습니다(Swift에서 번호를 클..

programing 2023.09.12

Swift에서 프로토콜의 관련 유형이 일반 유형 구문을 사용하지 않는 이유는 무엇입니까?

Swift에서 프로토콜의 관련 유형이 일반 유형 구문을 사용하지 않는 이유는 무엇입니까? 저는 프로토콜의 관련 유형에 사용되는 구문과 일반 유형의 차이에 대해 혼란스럽습니다. 예를 들어 Swift에서는 다음과 같은 것을 사용하여 제네릭 유형을 정의할 수 있습니다. struct Stack { var items = [T]() mutating func push(item: T) { items.append(item) } mutating func pop() -> T { return items.removeLast() } } 같은 것을 사용하여 연관된 유형의 프로토콜을 정의하는 동안. protocol Container { associatedtype T mutating func append(item: T) var cou..

programing 2023.08.28

스위프트 콤바인에서 @Published를 사용하여 계산된 속성과 동등합니까?

스위프트 콤바인에서 @Published를 사용하여 계산된 속성과 동등합니까? 명령형 Swift에서는 상태를 복제하지 않고 데이터에 편리하게 액세스할 수 있도록 계산된 속성을 사용하는 것이 일반적입니다. 이 클래스가 필수 MVC용으로 만들어졌다고 가정해 보겠습니다. class ImperativeUserManager { private(set) var currentUser: User? { didSet { if oldValue != currentUser { NotificationCenter.default.post(name: NSNotification.Name("userStateDidChange"), object: nil) // Observers that receive this notification might ..

programing 2023.08.23

지정된 UIColor에 대해 더 밝고 어두운 색상 변화를 표시합니다.

지정된 UIColor에 대해 더 밝고 어두운 색상 변화를 표시합니다. 스위프트에서 주어진 UIColor의 다양한 밝고 어두운 변형을 얻는 방법은 무엇입니까? 업데이트됨 UIColor 확장자 아래 사용: extension UIColor { func lighter(by percentage: CGFloat = 30.0) -> UIColor? { return self.adjust(by: abs(percentage) ) } func darker(by percentage: CGFloat = 30.0) -> UIColor? { return self.adjust(by: -1 * abs(percentage) ) } func adjust(by percentage: CGFloat = 30.0) -> UIColor? { va..

programing 2023.08.18

스위프트에서 GIF 이미지를 로드하는 방법은 무엇입니까?

스위프트에서 GIF 이미지를 로드하는 방법은 무엇입니까? 앱에 넣어야 할 GIF 배너 URL이 있는 String이 있습니다. 내 코드: func showAdd(){ Request.get("http://www.kyst.no/api/?apiMode=advertisement&lang=no", { (error: NSError?, data: NSData, text: NSString?) -> () in let jsonResult: Dictionary = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: nil) as Dictionary var banner : NSString = json..

programing 2023.08.08

iOS 13에서 검출 시트가 해제되었습니다.

iOS 13에서 검출 시트가 해제되었습니다. 13 이전에는 화면하는 뷰 되었습니다.iOS 13 이전에는 화면 전체를 커버하는 뷰 컨트롤러가 제공되었습니다.된 경우 부모 뷰 " " "viewDidAppear기능이 실행되었습니다. 은 뷰 디폴트로 즉, 즉, "iOS 13"은 "iOS 13"을 의미합니다.viewDidAppear부모 뷰 컨트롤러가 실제로 사라진 적이 없기 때문에 호출되지 않습니다. 제시된 뷰컨트롤러시트가 폐기되었음을 검출할 수 있는 방법이 있습니까?대리인을 사용하지 않고 부모 뷰 컨트롤러에서 재정의할 수 있는 다른 기능이 있습니까? 제시된 뷰컨트롤러시트가 폐기되었음을 검출할 수 있는 방법이 있습니까? 네. 대리인을 사용하지 않고 부모 뷰 컨트롤러에서 재정의할 수 있는 다른 기능이 있습니까? 프..

programing 2023.04.20

Swift에서 Arg 수가 가변인 함수에 배열 전달

Swift에서 Arg 수가 가변인 함수에 배열 전달 Swift Programming Language에는 다음과 같이 표시됩니다. 함수는 변수 개수의 인수를 배열로 수집할 수도 있습니다. func sumOf(numbers: Int...) -> Int { ... } 이러한 함수를 쉼표로 구분된 번호 리스트('sumOf(1, 2, 3, 4)')로 호출하면 함수 내 배열로 사용할 수 있습니다. 질문: 이 함수에 전달하고 싶은 번호 배열이 이미 있으면 어떻게 합니까? let numbers = [1, 2, 3, 4] sumOf(numbers) 이 오류는 "제공된 인수를 받아들이는 '_conversion'에 대한 오버로드를 찾을 수 없습니다."라는 컴파일러 오류로 인해 실패합니다.기존 어레이를 가변 함수에 전달할 수..

programing 2023.04.15