Имущественные проблемы

Я новичок в цели C, и я программировал на C++, и теперь я не знаю, как использовать @property ... и когда его использовать, я много об этом говорил, и я не понимал,

и теперь я пытаюсь сделать проект, сделанный в C++, и пытаюсь печатать объективным способом C

я пытаюсь сделать (игра для проверки), и есть 2 класса 1- Board 2- Cell ... это Cell Class.h

#import <Foundation/Foundation.h>

@interface Cell : NSObject

{
    int number;
    char checker;
}
@end

И в плате Class.h

#import <Foundation/Foundation.h>
#import "Cell.h"
//I dont know use it or not :S the @class
//@class Cell;

@interface Board : Cell
{
  //is the definition right ?
  Cell *DrawCell[64];

}

и когда я набираю board.m

   [ DrawCell [i] checker] = 'X' ;

это дает эту ошибку:
присвоение "только для чтения" возвращаемого результата сообщения Objective C не допускается

хотя я напечатал

@property (nonatomic) int number ;
@property (nonatomic) char checker;

и я попытался синтезировать их, но это также показывает эту ошибку

объясните пожалуйста что делать и зачем делать и когда делать

Спасибо:-)

1 ответ

Вы должны использовать:

[DrawCell [i] setChecker:'X']

или же

DrawCell[i].checker = 'X'

вызывать, как вы сделали, то же самое, что и делать

DrawCell[i].GetChecker() = 'X'

в C++, с этим определением

class Cell {
  public:
    char GetChecker() { return _checker; }
    void SetChecker(char newVal) { _checker = newVal; }
  private:
    char _checker;
}
Другие вопросы по тегам