gpt4 book ai didi

objective-c - 全局变量的链接器错误

转载 作者:行者123 更新时间:2023-12-03 16:46:26 25 4
gpt4 key购买 nike

我正在制作一个小型、简单的应用程序,因此我决定使用全局变量而不是单例。我也只用了一个。

我的应用程序从一个小的首选项文件中提取一个 int ,并将其设置为 NSInteger 的全局变量。全局变量可能会在应用程序运行时更改。

AppController.h

#import <Cocoa/Cocoa.h>

extern NSInteger preferenceNumber;

@interface ....

应用程序 Controller .m

-(void)someMethod {
...
//fileContents is a string containing the int that is inside the file
preferenceNumber = [fileContents intValue]
...
}

链接器错误 (2): 体系结构 x86_64 的 undefined symbol : “_preferenceNumber”,引用自: -AppController.o 中的[AppController someMethod1] -AppController.o 中的[AppController someMethod2:]ld:未找到架构 x86_64 的符号clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

粗体部分是两个错误。

这是什么原因造成的?最简单、最好的解决方法是什么?

最佳答案

只需在实现类中添加一行:-

AppContollr.m


@implementation AppContoller
NSInteger preferenceNumber;

关于objective-c - 全局变量的链接器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19237342/

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