gpt4 book ai didi

ios - 来自 的 INADDR_LOOPBACK 宏未在 swift 中导入

转载 作者:行者123 更新时间:2023-11-28 09:37:16 30 4
gpt4 key购买 nike

我正在尝试使用没有文档的 peertalk 框架。在他们的 obj-c 示例中,他们使用了 INADDR_LOOPBACK 宏,并且示例正在运行。但是当我尝试快速执行相同操作时,系统会抛出一个 Unresolved 标识符错误。任何人都知道如何解决它?

http://www.gnu.org/software/libc/manual/html_node/Host-Address-Data-Type.html

最佳答案

Swift 3 更新:自 Swift 3 起,INADDR_LOOPBACK被导入到 Swift 中。因此添加

就足够了
#include <netinet/in.h>

到桥接头文件,但自定义定义不是不再需要了。


旧答案:出于某种原因,宏定义

#define INADDR_LOOPBACK         (u_int32_t)0x7f000001

来自 <netinet/in.h> 没有导入到 Swift 中。问题可能(u_int32_t) Actor ,因为其他宏,如

#define INADDR_NONE             0xffffffff              /* -1 return */

进口的。

一个解决方案是定义

let INADDR_LOOPBACK = UInt32(0x7f000001)

在你的 Swift 代码中。 或者,添加

#include <netinet/in.h>
const uint32_t kInAddrLoopback = INADDR_LOOPBACK;

到桥接头文件并使用kInAddrLoopback在 Swift 代码中。这不太容易出错,因为您不必重复常量。

关于ios - 来自 <netinet/in.h> 的 INADDR_LOOPBACK 宏未在 swift 中导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34042017/

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