Iphone 为什么类在Xcode中不以蓝色显示?

Iphone 为什么类在Xcode中不以蓝色显示?,iphone,Iphone,我有一门课叫PlayingCard。我试着在一个叫做PlayingCardDeck的课程中使用它 我已在PlayingCardDeck.h中导入PlayingCard.h #import "PlayingCard.h" @interface PlayingCardDeck : Deck @end 当我尝试在PlayingCardDeck.m中调用类方法时,它不会以蓝色显示。XCode确实在自动完成中看到该类,但选中时它不是蓝色的。在这个例子中,我试图调用init方法,但是,我得到了错误预期

我有一门课叫PlayingCard。我试着在一个叫做PlayingCardDeck的课程中使用它

我已在PlayingCardDeck.h中导入PlayingCard.h

#import "PlayingCard.h"

@interface PlayingCardDeck : Deck

@end
当我尝试在PlayingCardDeck.m中调用类方法时,它不会以蓝色显示。XCode确实在自动完成中看到该类,但选中时它不是蓝色的。在这个例子中,我试图调用init方法,但是,我得到了错误预期表达式,好像它的XCode不知道PlayingCard类是什么。调用card.rank=和card.suit=的错误也不起作用,因为我认为PlayingCard未被识别。这是没有意义的,因为我已经定义了这个类并将它导入到PlayCardDeck中?提前谢谢

#import <Foundation/Foundation.h>
#import "Deck.h"
#import "PlayingCard.h"

@interface PlayingCardDeck : Deck

@end


#import "PlayingCardDeck.h"

@implementation PlayingCardDeck

-(id) init
{
    self = [super init];

    if (self) {
        for(NSString *suit in [PlayingCard validSuits])
            for(NSUInteger rank =1; rank <= 10; rank++)
                PlayingCard *card = [[PlayingCard alloc] init];
                card.rank = rank;
        card.suit = suit;

    }
}

在for循环中缺少
{
}
会给您带来麻烦

此代码

if (self) {
    for(NSString *suit in [PlayingCard validSuits])
        for(NSUInteger rank =1; rank <= 10; rank++)
            PlayingCard *card = [[PlayingCard alloc] init];
            card.rank = rank;
    card.suit = suit;

}

在for循环中缺少
{
}
会给您带来麻烦

此代码

if (self) {
    for(NSString *suit in [PlayingCard validSuits])
        for(NSUInteger rank =1; rank <= 10; rank++)
            PlayingCard *card = [[PlayingCard alloc] init];
            card.rank = rank;
    card.suit = suit;

}

您正在调用哪个类方法
播放CardDeck
?您是否合成了属性?它是在运行时崩溃,还是给您带来了编译器错误?您在
PlayingCardDeck
上调用哪个类方法?您是否合成了属性?它是在运行时崩溃,还是给了你编译器错误?就是这样!谢谢你的洞察力,成功了!谢谢你的洞察力。
if (self) {
    for(NSString *suit in [PlayingCard validSuits]) {
        for(NSUInteger rank =1; rank <= 10; rank++) {
            PlayingCard *card = [[PlayingCard alloc] init]; 
        }
    }
    card.rank = rank;
    card.suit = suit;
}
if (self) {
    for(NSString *suit in [PlayingCard validSuits]) {
        for(NSUInteger rank =1; rank <= 10; rank++) {
            PlayingCard *card = [[PlayingCard alloc] init];
            card.rank = rank;
            card.suit = suit;
        }
    }
}