gpt4 book ai didi

swift - 如何在 Swift 3 中访问传递的 Enum 参数

转载 作者:搜寻专家 更新时间:2023-10-30 22:03:38 24 4
gpt4 key购买 nike

我在访问通过枚举传递的参数时遇到了一些问题。

通用RequestType,更多会被包含

enum RequestType {
case flagging(api : FlaggingRequestType)
}

这是我的枚举,它接受另一个 FlaggingRequestType(另一个接受字符串参数的枚举)

enum FlaggingRequestType {
case getFlag(api : String)
}

protocol Requestable {
var requestType : RequestType { get set }
}

在这里我构建了我的标记请求

let flaggingRequest = RequestBuilder.buildFlaggingRequest(flagRequest: .getFlag(api: "http://www.apiworld.com"))

这是我实际从另一个方法发送请求的方法。

func sendRequest(for apiRequest : Requestable) {
switch apiRequest.requestType {
case .flagging:
self.flaggingAPI(for: apiRequest)
}
}

问题是我不知道如何访问 apiRequest/flaggingRequest 中的 api 参数中传递的值。这可能吗?我希望这是清楚的:)

最佳答案

这是具有关联值的枚举的重要链接 https://appventure.me/2015/10/17/advanced-practical-enum-examples/#sec-1-5

func sendRequest(for apiRequest : Requestable) {
switch apiRequest.requestType {
case .flagging(let api):
// access api value here
self.flaggingAPI(for: apiRequest)
}
}

关于swift - 如何在 Swift 3 中访问传递的 Enum 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42958695/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com