提问人:tombuarts 提问时间:11/15/2023 最后编辑:HangarRashtombuarts 更新时间:11/15/2023 访问量:54
如何删除Objective-C中的“未定义符号”错误?
How to remove "undefined symbol" error in Objective-C?
问:
我在 global.h 文件中将变量声明为 .我在所有视图控制器上都有我想使用变量的地方。如果我不为我的项目分配值,则生成并运行。如果我分配一个值,我会得到以下错误,并且构建失败;ue
Extern int ue;
#include "global.h"
ue
ue
未定义的符号:_ue
链接器命令失败,退出代码为 1(使用 -v 查看调用)
我已经搜索了解决方案并尝试了一些建议,但我不断收到相同的错误。我之前在“global.h”中声明了多个变量,没有任何问题。
答:
1赞
Mykyta iOS
11/15/2023
#1
extern
修饰符表示该值被分配给其他文件中的变量,因此您不应就地执行它。有两种方法可以解决您的问题。
选项 1:将 global.h 中的变量声明为 static 而不是 extern。
static int ue = 1;
选项 2:使用 global.h 和 global.m 文件创建 Obj-C 类。从两个文件中删除所有内容(接口/实现)(您应该只将指令保留在 .m 文件中)。在 .h 文件中声明一个 extern 变量。#import
extern int ue;
在 .m 文件中,分配值:
int ue = 1;
评论
0赞
tombuarts
11/16/2023
使用静态就像一个魅力。非常感谢。
评论