'string'之前的预期说明符限定符列表

时间:2010-12-02 05:18:06

标签: objective-c xcode

使用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

我做错了什么?我查阅了类似的先前问题,并且他们都与我所知道的输入丢失或不正确这一事实有关。

考虑到一切都来自一个新项目,我似乎无法了解我的意思。

3 个答案:

答案 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 .....?