我刚刚开始进行iOS编程,正在尝试编译简单的代码,但无法这样做。我收到的错误消息是
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_Player", referenced from:
objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
现在,我发现了2个类似的问题(在这里和这里),它们使用与我使用相同的环境进行编码,并且也面临着类似的问题。我尝试了他们的解决方案,但未成功。
当我刚启动iOS时,我正在使用本教程作为指南,并试图运行其代码。错误发生在我为播放器变量分配一些值的部分。代码如下。
#import "AppDelegate.h"
#import "Player.h"
#import "PlayersViewController.h"
@interface AppDelegate ()
@end
@implementation AppDelegate{
NSMutableArray *_players;
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
_players = [NSMutableArray arrayWithCapacity:20];
Player *player = [[Player alloc] init];
player.name = @"Bill Evans"; //error will occur here
return YES;
}
我的架构设置如下,
Player.h和PlayersViewController.h的代码与本教程中的代码完全相同。
更新
播放器
@interface Player : NSObject
@property (nonatomic, copy) NSString *name;
@property (nonatomic, copy) NSString *game;
@property (nonatomic, assign) int rating;
@end
PlayersViewController.h
#import <UIKit/UIKit.h>
@interface PlayersViewController : UITableViewController
@property (nonatomic, strong) NSMutableArray *players;
@end
我的建造结果
对于Player.h文件,我也必须包括.m文件。.m文件的代码如下,
#import <Foundation/Foundation.h>
#import "Player.h"
@implementation Player
@synthesize name = _name;
@synthesize game = _game;
@end
它可以构建,但是运行时会出现错误。但是,这是另一个问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句