腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
Swift
中
的
协议
见证
表
和
vtable
有
什么
不同
?
swift
我在试着理解斯威夫特
的
vtable
和
见证
者
表
之间
的
区别。从理论上讲,它应该是允许动态分派类方法
的
相同机制。SIL
的
文档包含两个段落,表明它们是
不同
的
。但这对我来说有点令人困惑。那么,这两者到底
有
什么
区别呢?
浏览 20
提问于2019-06-27
得票数 2
1
回答
为
什么
斯威夫特需要证人席?
language-design
、
swift-language
我正试着阅读
Swift
的
实现细节,但有一件事我无法确定,那就是它
的
“
见证
表
”。看起来它们是一个单独
的
用于结构
的
vtable
指针。 但你为
什么
要这么做?结构是按值复制
的
,所以在编译时您已经知道它们是
什么
类型了。那么,难道你不只是硬编码哪种方法调用
和
完成它?为
什么
在这些方法上执行虚拟调度?
浏览 0
提问于2016-09-25
得票数 14
回答已采纳
1
回答
Swift
如何在机器代码级别实现扩展?
swift
、
llvm
、
extension-methods
我现在正在处理LLVM,我脑海中浮现
的
问题是:
Swift
如何能够在二进制级别上实现扩展?我知道
vtable
,他们可以定义函数定义
的
位置等等,但据我所知,它们是固定长度
的
,对吗?
Swift</em
浏览 9
提问于2019-10-22
得票数 2
回答已采纳
1
回答
动态调度
协议
扩展不能工作多个目标
swift
、
swift-protocols
、
swift-extensions
、
dynamic-dispatch
、
swift-modules
这是我
的
主要目标
中
的
代码(而不是测试目标): func dontCrash() func dontCrashfatalError() dontCrash()} 在我
的
测试目标(非常
不同
的
目标)
中
,我得到了以下代码: im
浏览 1
提问于2018-11-26
得票数 4
回答已采纳
2
回答
存在容器与符合
协议
的
结构实例之间
的
关系
swift
、
existential-type
、
method-dispatch
我试图了解如何找到
协议
方法
的
实现。 我知道
Swift
使用一个存在容器作为堆栈内存
中
的
固定大小存储,它管理如何描述内存
中
的
struct实例。它有一个值
见证
表
(VWT)
和
一个
协议
见证
表
(PWT)。VWT知道如何管理结构实例
中
的
实际价值(它们
的
生命周期),PWT知道
协议
方法
的
实现。
浏览 2
提问于2021-06-16
得票数 1
回答已采纳
1
回答
无法在Xcode 7.2上使用
Swift
构建设备(与供应配置文件无关)
ios
、
xcode
、
swift
、
carthage
我添加了SnapKit (0.18.0)
和
Carthage (0.10)。每当我尝试在使用Xcode 7.2
的
设备上运行该应用程序时,都会遇到如下错误: 架构arm64
的
未定义符号:“
Swift
.Double
的
协议
见证
表
:SnapKit
中
的
SnapKit.RelationTarget我
有
Xcode 7.2
和
iOS 9.2。Google
和
Stackoverflow
浏览 2
提问于2015-12-11
得票数 0
回答已采纳
1
回答
T.self in
Swift
5是
什么
?
swift
我目前正在阅读Landmark应用教程,我在JSON中加载到Struct
的
部分。它们给出了以下代码。catch { 我特别不理解函数开头
的
T.self引用
和
<T: Decodable>。
浏览 1
提问于2021-03-15
得票数 2
回答已采纳
1
回答
在运行时,
Swift
如何知道要使用哪个实现?
swift
、
polymorphism
、
method-dispatch
} s.f()如果这是继承层次结构,我希望
Swift
使用v
表
来查找正确
的
实现。然而,array
中
的
具体类型可以是实现A
的
任何类型,以及许多其他
协议
,那么
Swift
运行时如何知道对象
的
结构(如果它也使用v
表</em
浏览 5
提问于2016-07-12
得票数 10
回答已采纳
1
回答
为
什么
静态调度这么快
swift
、
static
、
dispatch
我也知道动态调度
的
机制。但我和静态调度混淆了。静态方法在哪里。是否在全局哈希
表
中使用静态方法。静态调度是如何工作
的
。水流是怎样
的
。
浏览 1
提问于2018-11-06
得票数 1
回答已采纳
1
回答
iOS快速运行时如何工作
ios
、
swift
、
runtime
在ObjC
中
,它使用Messaging、static binding、dynamic typing、dynamic binding、dynamic method resolution、dynamic loading重要
的
是,核心方法objc_msgSend负责获取要发送
的
选择器
和
要发送它
的
对象,并在类方法
表
中
查找这些选项,以确定应该处理
的
代码。我在此所关切
的
是:
Swift
是否在运行时执行类似于ObjC
的
浏览 1
提问于2016-05-19
得票数 30
回答已采纳
2
回答
是否
有
办法将“`Self`”限制为泛型类型?
swift
、
generics
、
protocols
、
extension-methods
, penguin, nightOwl, dayOwl] bird.doSomething()我得到
的
输出是{ print("FlappyBird: \(name)")}extensionOwl<String>: Night Owl 因为nightOwl是Owl<String>类型<em
浏览 0
提问于2018-04-13
得票数 1
回答已采纳
2
回答
Alamofire 4.0.1建筑x86_64 xCode 8
SWIFT
3未定义符号
ios
、
swift
、
alamofire
、
swift3
、
xcode8
我
的
项目与cocoapods 1.0.1
和
Alamofire分支"
swift
3“合作得很好。但今天,我将cocoapods更新为1.1.0,并从主分支将alamofire更新为4.0.1,并获得了x86-64 (模拟器)构建
的
链接器错误: 未定义
的
体系结构符号x86_64: Alamofire.request(Alamofire.URLConvertible,方法: Alamofire.HTTPMethod,参数:
Swift
.String : Any?,编码: Alamof
浏览 2
提问于2016-09-28
得票数 1
回答已采纳
2
回答
在
Swift
中
,如何获得“任意”变量
的
真实大小?
swift
、
types
、
size
我希望能够在
Swift
中
获得Any变量
的
底层数据类型
的
大小。我希望通过运行MemoryLayout.size(ofValue: anyObject)可以实现这一点,但是该表达式总是返回32,而不管Any对象
的
底层数据类型如何。我假设32是内部Any构造/类型
的
大小,它保存关于它存储
的
对象
的
元数据。 如何获得底层数据类型
的
大小?
浏览 3
提问于2021-09-28
得票数 4
回答已采纳
4
回答
调用
Swift
协议
扩展方法,而不是在子类
中
实现方法。
swift
、
inheritance
、
protocols
、
dynamic-dispatch
我遇到了一个在下面的代码(
Swift
3.1)
中
解释
的
问题: func methodA()} extension但出于某种原因,调用来自
协议
扩展
的
methodA()默认实现。但是,object2.methodB()调用
的
工作方式与预期
的
一样。是
协议
方法调度
中
的
另一个
Swift
错误,还是我遗漏了
什么<
浏览 5
提问于2017-06-22
得票数 30
回答已采纳
2
回答
“存在类型”在
Swift
中
是
什么
意思?
swift
、
type-theory
我正在阅读,但不明白以下内容
的
含义: 可以通过使用存在类型形状而不是泛型参数来组合这些转换,但是这样做意味着比预期
的
更多
的
动态性
和
运行时开销。
浏览 0
提问于2019-07-03
得票数 22
回答已采纳
3
回答
当我在
Swift
中将对象
的
委托设置为"self“时,编译器在做
什么
?
ios
、
swift
、
compilation
、
delegates
、
swift3
在我
的
代码
中
,我
有
实现UITextFieldDelegate
的
UITextFieldDelegate
和
UIPickerViewDelegate。textField
和
pickerView
的
委托分别通过textField.delegate = self
和
pickerView.delegate = self分配。我理解两种
协议
的
状态,因为它们都只接受与它们
的
委托相匹配
的
类型,但我不确定编
浏览 3
提问于2016-11-18
得票数 2
回答已采纳
1
回答
使用struct
协议
的
MemoryLayout
的
奇怪案例,报告
的
大小
不同
ios
、
swift
、
metal
我是从以前
的
版本重新工作,所以从零开始顶点
的
协议
如下:这个特定
的
画笔使用
的
顶点信息是:stride: 8ispointvertex:
浏览 0
提问于2020-02-12
得票数 0
回答已采纳
1
回答
输入延迟西格玛
协议
sigma
、
zero-knowledge
在Sigma
协议
中
,步骤是:(1)承诺,(2)挑战,(3)响应。一般来说,证明者
有
一个陈述
和
见证
,他们可以用来计算承诺步骤。但在某些情况下(如Schnorr或两个离散对数
的
相等),证明器在第一步
中
不使用语句或
见证
。 是否
有
更多具有延迟输入特性
的
通用Sigma
协议
,而不仅仅是基于离散日志或其他代数问题
的
协议
?例如,图
的
哈密顿性呢?
浏览 0
提问于2022-10-06
得票数 1
1
回答
如何用
Swift
中
的
子定义覆盖父类扩展
swift
、
inheritance
、
swiftui
、
swift-protocols
我正在尝试创建一个基类Node类,它可以通过一组可组合
的
协议
进行继承扩展,以便有条件地向基类Node类添加额外
的
特性。首先,我要添加一个Previewable
协议
,它可以扩展Node,为某些实现提供一个可选
的
预览视图。然而,当我运行它时,我看到
的
是"No Preview"而不是类实现提供
的
"Test Preview"文本。 我
有
一种感觉,我处理这个错误
的
方式,但我不完全确定如何纠正它。但是,如果
浏览 16
提问于2022-09-23
得票数 2
回答已采纳
1
回答
“灰色列表”是如何在现代垃圾收集器
中
实现
的
?
garbage-collection
在维基百科关于“跟踪垃圾收集”
的
文章
中
,提出了以下声明:在这种抽象
中
,对象分为三组:白色、黑色
和
灰色。基本跟踪算法枚举灰色集合
的
所有元素,将每个灰色对象标记为黑色,直到所有不可到达
的
对象都是白色
的
,并且可以删除。 本文没有讨论灰集是如何实现
的
,这对GC算法
的
总体性能有着明显
的
影响。最直接
和
最明显
的
解
浏览 0
提问于2018-02-19
得票数 1
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
C#程序代码中的8和‘8’有什么不同?
SAS-编程中的小技巧(三)
Swift 4.2新特性
OpenStack 基础介绍04——各组件综述之镜像、存储和认证
新年新语言,WCDB Swift
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券