Swift - 将重载函数分配给变量

2023-11-25

我收到编译时错误,指出 myFunc 引用不明确。

func f (s: String) -> String { return "version 1: " + s }
func f(sourceString s: String) -> String { return "version 2: " + s }
var myFunc: (String)-> String = f as (sourceString : String)->String

如何显式引用上例中重载函数 f 的每个版本?如果我注释掉任一声明func f它将编译并运行。但我想知道如果两个函数都已声明,如何引用每个函数。谢谢。


我不知道如何做你想要的,但这也许有帮助:

var myFunc1: (String)-> String = { s in f(sourceString: s) }
var myFunc2: (String)-> String = { s in f(s) }

您现在可以致电:

let s1 = myFunc1("one")  // returns "version 2: one"
let s2 = myFunc2("two")  // returns "version 1: two"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Swift - 将重载函数分配给变量 的相关文章

  • Swift 中的协议与多态性

    我对面向对象编程相当陌生 我正在尝试了解协议 委托和多态性 我最近观看了一个培训视频 其中宣传当您有两个相似且具有相似方法实现的类时 协议是优雅地实现此目的的最佳解决方案 这就说得通了 然而 一些额外的研究让我发现了多态性 听起来这也是一种
  • Swift UIToolBar 追加 UIBarButtonItem 项目

    我的语法不正确 有人知道这里缺少什么吗 我正在使用 Xcode 6 beta 3 并且尝试将工具栏项动态添加到 viewDidLoad 中的 手动添加的 工具栏 有两个问题 首先 我无法将工具栏中的项目附加到数组中 其次 虽然编译器允许我调
  • AVAssetExportSession.requestExportSession 回调从未被调用(swift 3,iOS10)

    以下代码从不调用导出回调 导出会话创建得很好 我没有看到任何错误 也没有任何进展 CPU 为 0 我认为没有例外 状态为 1 进行中 进度为 0 错误为零 视频在画廊中播放 我可以成功获取视频的图像 我已将代码提取到单个 UIViewCon
  • 如何以编程方式创建 Unwind segue

    我制作了一个不使用故事板的应用程序 在我的应用程序的这一部分中 我需要创建一个展开转场ThirdViewController to FirstViewController仅以编程方式 我知道如何使用 sotorybard 执行此操作 但找不
  • 带 cookie 的 Alamofire 请求

    我是初学者 我不知道如何使用 Alamofire 发出 GET 请求 但它需要身份验证 我设法用其他网络服务 登录 来做到这一点 因为它需要参数参数 parameters username username password passwor
  • 如何防止在 macOS 中打开同一窗口的多个实例?

    我正在制作一个 Mac 菜单栏应用程序 它有一个Preferences选项 当用户点击它时 会出现一个Preferences将打开窗口 显示应用程序的所有设置 我打开Preferences窗口如 let storyboard NSStory
  • keyPathsForValues影响 NSManagedObject

    你好 我想将亚伦书中的客观练习翻译为 swift 但我找不到解决方案 Objective c 代码是 dynamic firstName dynamic lastName dynamic department NSSet keyPathsF
  • 如何以编程方式设置 UICollectionViewCell 宽度和高度

    我正在尝试实施一个CollectionView 当我使用自动布局时 我的单元格不会改变大小 但会改变它们的对齐方式 现在我宁愿将它们的尺寸更改为例如 var size CGSize width self view frame width 1
  • 关于 Swift 中重写类属性的困惑

    我已阅读 Swift 文档并在这里搜索 但我仍然不确定如何实现类层次结构 其中每个子类为继承的静态属性设置自定义值 那是 基类定义了一个静态属性 所有实例共享相同的值 子类覆盖静态属性 所有实例共享相同的值 这与基类不同 财产可以储存吗 另
  • NumberFormatter 分组未按预期工作

    在进行货币格式化工作时 我在尝试格式化智利比索时发现了一个问题 按照此代码 let priceFormatter NumberFormatter priceFormatter locale Locale identifier es CL p
  • 获取键盘高度在 iOS 11 beta 上不起作用

    我有以下在 IOS 10 上运行的代码 但现在在 IOS 11 beta 上运行时不再运行 if let userInfo notification userInfo if let keyboardSize userInfo UIKeybo
  • 两个 UIBezierPaths 交集作为 UIBezierPath

    我有两个UIBezierPaths 一个表示图像部分的多边形 另一个是要在其上绘制的路径 我需要找到它们之间的交集 以便只有该交集区域内的点才会被着色 有没有方法在UIBezierPath可以找到两条路径之间的交点 或新路径 我不知道获取作
  • Swift MKAnnotationView 旋转

    我试图在坐标更改时旋转我的自定义注释 我可以成功地更改坐标 但尝试了一切方法来旋转它 但没有成功 基本思想是有一个平面并通过旋转设置其方向 这是我的代码 import UIKit import MapKit class CustomPoin
  • 在 iMessage 应用程序中检查横向/纵向方向(扩展)

    见过很多检查方向的解决方案 但奇怪的是 没有一个有效 下面是代码片段 override func viewWillTransition to size CGSize with coordinator UIViewControllerTran
  • Swift 中的条件导入

    我有一个在各种应用程序中使用的日志功能 由于我在整个应用程序中使用它 因此也可以方便地进行 Crashlytics 日志记录调用 然而 并非每个应用程序都使用 Crashlytics 在 Objective C 中 您可以使用预处理器条件来
  • iOS Swift 多维数组 - 编译需要很长时间。我应该改变什么?

    我是斯威夫特的新人 以前从未使用过 ObjC 编程 我在使用 iOS 应用程序时遇到了问题 通过选择器查询数组非常简单 我有 4 个多维数组 如下所示 let Setting 0 0 0 0 0 0 2230 0 0 0 0 0 2230
  • Swift 1.2 和 Swift 2.0 中的字符串长度[重复]

    这个问题在这里已经有答案了 在以前版本的 Swift 中 我有以下代码 func myfunc mystr String if mystr utf16Count gt 3 使用最新版本的 Swift 1 2 我现在收到以下错误 utf16C
  • 在 wkwebview 中启用摄像头和麦克风访问

    我有一个针对移动设备优化的网络应用程序 它利用getUserMedia访问网络摄像头和麦克风资源 我正在将这个应用程序包装在WKWebView因为我想提供原生应用程序体验 我知道 iOS 不允许通过浏览器访问相机 但是有什么方法可以使用本机
  • 变量 p 在初始化之前通过引用传递

    我有一个 Human 类 它的函数可以接受任意数量的人 并确定某人是否比这些人中的任何人年长 然后返回一个包含他 她比其年长的人的数组 func isOlderThan people Human gt Human var p Human f
  • CoreBluetooth 功能无法从 Singleton 运行

    所以我目前在 iPad 和 iPhone 之间建立了蓝牙连接 我已经在中创建了我的测试代码ViewController一切正常 现在我把它移到了 2 个经理类 第一个是CBCentralManager和一个用于CBPeripheralMan

随机推荐

  • QTextEdit 中的可点击超链接

    我想用QTextEdit 在只读模式下 显示可点击的超链接 我曾经这样做过 QTextEdit textEdit new QTextEdit QTextCursor cursor textEdit gt document textEdit
  • Android AppCompat 修订版 21 强制 Holo 主题

    在我的项目中 我使用的是 appcompat v7 修订版 20 并且我的项目针对 android API 级别 19 KitKat 因此我可以使用 Holo 主题 我不小心将 Android 支持库 更新为修订版 21 因此我必须将清单中
  • 如果内部的总工作量相同,则将一个 for 循环拆分为多个 for 循环的开销是多少? [复制]

    这个问题在这里已经有答案了 拆分的开销是多少for 像这样循环 int i for i 0 i lt exchanges i some code some more code even more code 分成多个for 像这样循环 int
  • 如何根据多个条件并使用 linq 从通用列表中删除项目

    我有两个列表 一个包含 url 另一个包含所有 MIME 文件扩展名 我想从第一个列表中删除所有指向此类文件的 url 示例代码 List
  • 如何制作自定义分享按钮

    我一直想在我的应用程序中添加 Facebook 共享按钮 但我遇到的问题是它们看起来都不同 我看到类似的网站this具有定制设计的共享按钮 有谁知道一个好的教程 或者有任何关于如何解决这个问题的指示 在 Facebook 上分享内容非常简单
  • html2canvas可以在页面中渲染svg吗?

    我正在使用 html2canvas 创建包含 SVG 的 HTML 页面的 屏幕截图 除了元素之外 一切看起来都不错 我知道应该可以在 Canvas 中渲染 SVG PhantomJS fabric js 和 CanVG 可以做到这一点 这
  • 如何调整文本(字体)大小以适合 UISegmentedControl 的 UISegment?

    有什么方法可以减小可以适合单段的字体大小UISegmentedControl 尝试过很多类似的事情 UILabel appearanceWhenContainedIn UISegmentedControl class nil adjusts
  • 文本上透明删除线

    我需要实施一个使用 CSS 在文本上添加透明删除线所以我不必更换 h1 标记为 img 标签 我已经设法用 CSS 在文本上实现换行 但无法使其透明 想要的效果 我拥有的 body background url http lorempixe
  • OpenCV 将 Canny 边缘转换为轮廓

    我有一个 OpenCV 应用程序 由办公室内部的网络摄像头流 很多细节 提供 我必须在其中找到人工标记 标记是白色背景上的黑色方块 我使用 Canny 查找边缘 使用 cvFindContours 进行轮廓绘制 然后使用 approxPol
  • Swift 3 中的dispatch_once 去哪儿了?

    好的 所以我发现了新的Swifty 调度 API在 Xcode 8 中 我使用起来很有趣DispatchQueue main async 我一直在浏览DispatchXcode 中的模块来查找所有新的 API 但我也用dispatch on
  • 如何以比使用 strip_tags 函数更安全的方式去除标签?

    当字符串包含 小于 和 大于 符号时 我在使用 strip tags PHP 函数时遇到一些问题 例如 If I do strip tags span some text lt 5ml and then gt 10ml some text
  • 有没有一种方法可以使用宏来检测是否包含标准标头?

    我想做一个相当于boost swap在我的环境中 可以或不可以包含标准标头 取决于项目许可和其他内容 我想让部分代码受到警卫检测器的保护 让我们考虑一个编译单元 项目特定的 前述的潜力包括 include
  • 如何从Python命令行接收正则表达式

    我想从命令行接收像 t 制表符 这样的分隔符 并用它来解析文本文件 如果我把 delimiter sys argv 1 在代码中 然后从命令行输入 python mycode py t 分隔符是 t 即 Python 会按原样保留输入字符串
  • python中接受所有泰文字符和英文字母的正则表达式

    我需要对泰语文本文档进行矢量化 例如 Bag of Words doc2vec 首先 我想检查每个文档 省略除泰语字符和英语单词之外的所有内容 例如 没有标点符号 没有数字 除了撇号之外没有其他特殊字符 对于英文文档 我使用这个正则表达式
  • C const 的默认类型是什么?

    我正在编写一些 C 代码 并注意到我认为是错误的地方 但事实并非如此 我有以下类型声明语句 const fee 然而 它最初没有被捕获 因为编译器和我没有捕获它 所以我很好奇为什么 C 允许这样做以及默认类型是什么 只有原始版本的 C 语言
  • 字节序是否只影响数字的内存布局,而不影响字符串?

    是否真的 无论架构是大端还是小端 只是数字的内存布局不同 字符串的内存布局是相同的 如果您有一个简单的 8 位字符表示 例如扩展 ASCII 那么不会 字节顺序不会影响布局 因为每个字符都是一个字节 如果您有多字节表示形式 例如 UTF 1
  • 谷歌地图两个圆的交点

    有没有一种简单的方法可以获得lat lng两个的交点 如果有 circles in 谷歌地图 API V3 或者我应该去hard way EDIT 在我的问题中 圆总是具有相同的半径 这样可以使解决方案更容易 是的 对于相等的圆 可以阐述相
  • 使用 Firebase 身份验证的 SwiftUI

    我正在尝试通过电子邮件 密码登录使用 SwiftUI Firebase 身份验证 我的问题是 有什么方法可以在用户创建帐户时将个人资料信息附加到用户的身份验证信息中 或者我必须将 Firebase Auth 与 Firestore 或 Fi
  • 什么时候应该封装泛型类型?

    我见过很多人建议您应该使用更接近您的领域的类来封装泛型类型 例如 Steve 和 Nat 建议在以测试为指导不断发展面向对象的软件 that 我们的经验法则是 我们尝试限制使用泛型传递类型 特别是当应用于集合时 我们将其视为一种重复形式 这
  • Swift - 将重载函数分配给变量

    我收到编译时错误 指出 myFunc 引用不明确 func f s String gt String return version 1 s func f sourceString s String gt String return vers