在变量中分配运算符函数

2023-11-24

我正在尝试创建一个通用函数**(不存在的)运算符将计算左侧数字的右侧数字次方。

它适用于 0 和正数,但我想处理负数。

我想到了几个想法,但我想尝试将现有运算符的函数存储在变量中,如下所示:

var operation = *

or

var operation = /

using operation(a, b)会做同样的事情a*b or a/b

在 Swift 中这样的事情可能吗?


你不可以做这个:

var operation = *

但是你CAN做这个:

var operation:(Int, Int) -> Int = (*)

operation(4,2) // -> 8

Because *有许多重载类型:

func *(lhs: UInt32, rhs: UInt32) -> UInt32
func *(lhs: Int32, rhs: Int32) -> Int32
func *(lhs: UInt64, rhs: UInt64) -> UInt64
func *(lhs: Int64, rhs: Int64) -> Int64
func *(lhs: UInt, rhs: UInt) -> UInt
func *(lhs: Int, rhs: Int) -> Int
func *(lhs: Float, rhs: Float) -> Float
func *(lhs: Double, rhs: Double) -> Double
func *(lhs: Float80, rhs: Float80) -> Float80

我们必须明确指定是哪一个。

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

在变量中分配运算符函数 的相关文章

  • SKAction 中的选择器是什么:perform(_:onTarget:)

    文档说 宣言 https developer apple com reference spritekit skaction 1417764 perform class func perform selector Selector onTar
  • 如何在 Swift 中使用 AXObserverAddNotification?

    如何在 Swift 中使用 AXObserverAddNotification 来检测 UI 更改 Obj C 中有一个很好的答案 我的应用程序如何检测另一个应用程序窗口的更改 https stackoverflow com questio
  • 当导航栏半透明 = false 时,UISearchBar 超出屏幕范围

    我尝试将 UISearchBarController 添加到 tableView 但是当我设置 UINavigationBar appearance translucent false 时 UISearchBar 隐藏在屏幕之外 在 Tab
  • iOS 10.核心数据插入新对象 sigABRT

    我尝试了 forEntityName Game MyApp Game 在我的 dataManagerFile 中 let appDelegate UIApplication shared delegate as AppDelegate le
  • SwiftUI:如何使用 @Binding 变量实现自定义 init

    我正在制作金钱输入屏幕 我需要实施自定义init根据初始化量设置状态变量 我认为以下方法会起作用 struct AmountView View Binding var amount Double State var includeDecim
  • 为什么我需要在 Swift 中为结构编写初始化程序才能在单元测试中使用它?

    我正在尝试使用公共结构 public struct Person public let name String 在单元测试 XCTest 中 let person Person name Paul 测试构建失败并出现错误 无法构造 Pers
  • 如何快速将 void 块传递给 objc_setAssociatedObject

    我正在尝试通过扩展向 UIView 添加点击手势支持 使用 Objective C 非常简单 但是当我尝试在运行时属性上设置 void 返回块时 出现以下错误 错误 类型 gt Void 不符合协议 AnyObject 这是计算的属性 va
  • Apple Watch 表 - 前 4 行未出现

    我在添加行时遇到问题WKInterfaceTable在苹果手表上 奇怪的是 无论我做什么 前 4 行都显示为空 我尝试手动添加行并循环 没关系 我相信我的代码很好 因为第五行和其他行看起来都很好 发生的情况如下 进一步滚动 My code
  • UIImage 在编码/解码时不等效

    我一直在对我的模型进行一些测试 以确保当我将它们编码为 JSON 然后使用它们解码回来时它们是相等的JSONEncoder Decoder 然而 我的一项测试失败了 罪魁祸首是UIImage 我已确保在编码 解码过程中没有抛出任何错误 首先
  • 在Xcode7中播放音频

    我只是想在点击按钮时播放音频 但是这行代码出现错误 ButtonAudioPlayer AVAudioPlayer contentsOfURL ButtonAudioURL error nil 这是我的整个代码 import UIKit i
  • DropDelegate Safari 拖动图像

    我正在尝试实施DropDelegate模式以允许将图像拖到我的视图中并加载它们 这对于取景器中的图像效果很好 但是当将图像从 safari 拖到我的视图中时 这不起作用 我注意到typeIdentifier or UTType所提供的信息
  • Swift3 中的数组排序

    在我的代码中 我有一个如下所示的结构 struct Object var name String var count Int 我现在正在创建一个包含 10 个对象的数组 这些对象具有随机名称和随机计数 有没有一个简单的方法a 按字母顺序对它
  • Swift 闭包异步执行顺序

    在我的模型中 有函数来获取需要完成处理程序作为参数的数据 func fetchMostRecent completion sortedSections TableItem gt self addressBook loadContacts c
  • 计算 Swift 4 中的时差

    如果我有两个变量 10 30 和另一个 1 20 有没有办法获得它们之间的 2小时50分钟 的时间差 我在下面尝试过这个 func calcTime time1 String time2 String gt String let time1
  • 如何使用 Swift 关闭打开的文件?

    我正在下载约 1300 张图像 这些是小图像 总大小约为 500KB 但是 下载并将它们放入 userDefault 后 我 收到如下错误 libsystem network dylib nw route get ifindex 套接字 P
  • 带过滤器的 AudioKit 导出文件

    我想用音频套件的许多过滤器覆盖现有的 m4a 文件 我的代码 file try AKAudioFile forReading recordVoiceURL player AKPlayer audioFile file delay AKVar
  • 为什么 Swift 语言将 8 位二进制值赋给 Int8 类型的 var 时会出现溢出?

    当我在操场上写下这一行时 let firstBits Int8 0b11111111 出现错误 存储到 Int8 时整数文字溢出 由于 Int8 是有符号值 其范围是从 128 到 127 从左起第一位代表单数 减号或加号 其余 7 位代表
  • 检测 AVPlayerViewController 是否正在播放视频或正在缓冲并向播放器添加覆盖

    我必须检测视频是否处于播放模式或缓冲模式 我正在从 URL 加载视频 我已经尝试了下面的代码 我可以在视频开始播放后进行跟踪 但不能在视频处于缓冲状态时进行跟踪 另外 我想在我的播放器中添加覆盖视图 我尝试在 AVPlayer 中添加叠加层
  • 配置 2 在按钮 swiftUI 中发出警报消息

    我要学习 swift 和 swiftUI 我申请按类别整理笔记 如果需要的话 你可以在我的 GitHub 中找到我的项目 https github com yoan8306 List Notes https github com yoan8
  • 将 Facebook 图片 URL 上传到 Firebase 存储

    我正在尝试将用户的 Facebook 个人资料图片上传到 Firebase 存储 let dictionary result as NSDictionary let data dictionary objectForKey data let

随机推荐

  • F#:如何使用 SQL 数据源创建 Deedle Frame

    我试图找出当数据来自 SQL 服务器时 在 F 中创建 Deedle 框架的最佳方法是什么 我尝试过类似以下的事情 I packages Deedle 0 9 12 load Deedle fsx r System dll r System
  • C# 注册表 SetValue 抛出 UnauthorizedAccessException

    在你尝试用 快速谷歌搜索 来回答这个问题之前 我想指出的是我已经这样做了 这是情况 我有以下方法尝试修改注册表项值 我遇到的问题是 执行时 它会抛出 UnauthorizedAccessException即使我已经将密钥打开为可写 我以管理
  • spring javaconfig、xml配置和注解之间的性能差异

    我们的 Spring 配置包含大约 1200 个 bean 并且我们使用 component scan Autowired 如果我们将 ApplicationContext 导出为 Xml 并且仍然使用 Autowired 我们可以节省大约
  • 带有 Bower 支持的 Webpack

    我想加载最好的节点包 并且仅当不存在时才加载 Bower 包 我只会按照 Webpack 站点中的建议使用节点包 但我需要加载一个位于 Bower 中的库 https github com Stamplay stamplay js sdk和
  • 计算经纬度坐标的中点

    有谁知道获得一对纬度和经度点的中点的最佳方法 我使用 d3 js 在地图上绘制点 需要在两点之间绘制一条曲线 因此我需要创建一个中点来在线条中绘制曲线 请参阅下图以更好地理解我正在尝试做的事情 对长脚本表示歉意 画东西看起来很有趣 我已经划
  • 在 GitHub 上指定备用项目级 README.md

    使用 GitHub 的基于 Web 的界面 我无法弄清楚如何为项目的 README 文件指定备用路径 文件名 创建新的自述文件时 Web 界面确实提供了使用我想要的任意路径或文件名的选项 但我选择的文件不会用作项目级自述文件 我希望当用户访
  • 获得 (omniauth-facebook) 和 (omniauth-twitter) 工作

    我在用着 Ruby on Rails 4 设计3 0 3 全方位认证 1 1 4 omn iauth facebook 1 4 1 omn iauth twitter 1 0 0 我最近设置了我的omniauth facebook一切正常
  • 如何将 Proguard 混淆集成到我的 JavaFX 的 IntelliJ 工件中?

    我正在使用 IntelliJ IDEA 作为 IDE 开发 JavaFX 应用程序 到目前为止 一切都运行顺利 我已经配置了所有外部库并且正确创建了我的 JavaFX 工件 现在我想在创建工件时集成混淆 使用 Proguard Intell
  • 没有BOM的UTF-8 html显示奇怪的字符

    我有一些 HTML 其中包含一些外来字符 HTML 文档保存为无 BOM 的 UTF 8 当我在浏览器中查看页面时 外来字符似乎被奇怪的字符组合 所取代 只有当我将 HTML 文档保存为带有 BOM 的 UTF 8 时 字符才能正确显示 我
  • 追踪 Android 中的内存/窗口泄漏?

    Android开发中如何追踪内存泄漏 我正在使用 eclipse IDE 来开发该应用程序 我不知道如何纠正内存或窗口泄漏异常 任何想法 主要是窗口泄漏错误引发非法参数异常 如何纠正这两个问题 请帮忙 如果你真的想知道如何跟踪一般的内存泄漏
  • 如何使用 postgresql 在 sqlalchemy 中显式转换数组文字的类型?

    在尝试通过cast type coerce和type 来转换文字数组类型并且没有成功之后 我想我会问 from pprint import pprint from sqlalchemy import String null Integer
  • 语句和PreparedStatement的区别

    准备好的语句是语句的稍微强大的版本 并且应该始终至少与语句一样快速且易于处理 准备好的语句可以参数化 大多数关系数据库通过四个步骤处理 JDBC SQL 查询 解析传入的 SQL 查询 编译 SQL 查询 规划 优化数据采集路径 执行优化的
  • backbone.js 视图在模型获取之前渲染

    我正在尝试制作一个小型的backbone js 应用程序 但在处理事情的顺序方面遇到了困难 在我的 html 文件中 标题中有两个脚本块 在我的 app js 中 我定义了一个简单的模型 视图和路由器 function window MyM
  • LinkBut​​ton 命令事件似乎没有触发

    我使用 AJAX Control Toolkit Accordion LinkBut ton 和 TextBox 创建了一个简单的用户控件 如下所示 测试控制 ascx
  • 该函数有太多语句。 (41)

    我有这个控制器 controller ctrl function scope rootScope timeout alert location tooltip popover BetSlipFactory AccordionsFactory
  • PhoneGap iOS 应用程序图标 [重复]

    这个问题在这里已经有答案了 因此 我尝试使用以下指南在 config xml 文件中为我的应用程序指定自定义 iOS 图标 https build phonegap com docs config xml 然而 当我使用他们给你的代码行时
  • 在ConfigureServices中注册服务时会调用哪个构造函数

    如果一个类有两个构造函数 当我在 ConfigureServices 中注册该服务时 服务容器如何选择使用哪一个构造函数 假设我有一个名为MyClass有相应的接口IMyClass 在里面ConfigureServices 方法我调用以下代
  • 如何获取 ExpandableListView 中第一个/最后一个可见组的索引?

    如何获取 ExpandableListView 中第一个 最后一个可见组的索引 getFirstVisiblePosition 和 getLastVisiblePosition 对于 ExpandableListViews 几乎没有用 因为
  • UITableView - 多项选择和单选

    我的 UITableView 有 2 个部分 我希望第一部分允许多个单元格选择 第二部分仅允许单个选择 我尝试了一些代码 但效果不佳 如果可能的话 请快速编写代码 谢谢 你可以简单地尝试一下这个 这个解决方案非常适合我 尝试一下也许对其他人
  • 在变量中分配运算符函数

    我正在尝试创建一个通用函数 不存在的 运算符将计算左侧数字的右侧数字次方 它适用于 0 和正数 但我想处理负数 我想到了几个想法 但我想尝试将现有运算符的函数存储在变量中 如下所示 var operation or var operatio