使用Apple的最新版Xcode,我遇到以下问题。
启动并启动新项目后,无论项目是什么,我都会收到错误。
假设我想构建“基础”类型的“Mac OS X命令行工具”。
然后,要添加一个新类,我转到File>添加文件>可可类> Objective-C Class(NSObject的子类)。
接下来,在创建的新类的.h文件中,我替换为以下代码:
//
// newclass.h
// Untitled
//
#import <Cocoa/Cocoa.h>
@interface newclass : NSObject
{
string userName;
}
@property string userName;
@end
然后使用以下代码实现:
//
// newclass.m
// Untitled
//
#import "newclass.h"
@implementation newclass
@synthesize userName;
@end
然后点击“Build&amp; Run”,发生以下错误:
newclass.h:11: error: expected specifier-qualifier-list before 'string'
newclass.h:14: error: expected specifier-qualifier-list before 'string'
newclass.m:11: error: no declaration of property 'userName' found in the interface
我做错了什么?我查阅了类似的先前问题,并且他们都与我所知道的输入丢失或不正确这一事实有关。
考虑到一切都来自一个新项目,我似乎无法了解我的意思。
答案 0 :(得分:2)
我认为你正在寻找NSString *
。 string
是C ++类,Objective-C不是C ++。
答案 1 :(得分:1)
尚未定义string
类型。我认为您打算使用NSString *
答案 2 :(得分:1)
尝试像这样改变你的.h
@interface newclass : NSObject
{
NSString *userName;
}
@property (nonatomic,retain) NSString *userName;
为什么你的实现看起来像你的.h .....?