首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >缺少CFSocketCreate或构造函数方法。如何使用Swift创建CFSocket?

缺少CFSocketCreate或构造函数方法。如何使用Swift创建CFSocket?
EN

Stack Overflow用户
提问于 2014-06-18 14:07:34
回答 2查看 2.1K关注 0票数 4

导入CoreFoundation中似乎缺少用于实例化CFSocket的任何方法调用

代码语言:javascript
复制
import CoreFoundation

var socket:CFSocket = CFSocket()

当选择了swift only时,参考文档不显示任何内容:

代码语言:javascript
复制
Creating Sockets

4 Objective-C symbols hidden

如何在Swift下实例化CFSocket?

EN

回答 2

Stack Overflow用户

发布于 2014-09-10 17:38:12

我也有同样的问题。它是一个CF结构,而不是一个对象,所以你没有构造函数。您可以使用CFSocketCreate

有些人是这样想的:

代码语言:javascript
复制
  let socket : CFSocket = CFSocketCreate(_ allocator: CFAllocator!,
              _ protocolFamily: Int32,
              _ socketType: Int32,
              _ `protocol`: Int32,
              _ callBackTypes: CFOptionFlags,
              _ callout: CFSocketCallBack,
              _ context: UnsafePointer<CFSocketContext>)

Reference

票数 0
EN

Stack Overflow用户

发布于 2016-12-07 09:52:36

将callout替换为闭包,如下所示:

代码语言:javascript
复制
let socket = CFSocketCreate(kCFAllocatorDefault,
                          PF_INET, 
                          SOCK_STREAM, 
                          IPPROTO_TCP, 
                          2,
                          { (socket,_,_,_,_) in },
                          nil)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24278158

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档