ループ内でオブジェクトをNSMutableArrayに追加しようとしている状況があります。ループの最後に、54個のオブジェクト(例として)が配列に追加されていることを示していますが、配列からオブジェクトを読み取ろうとすると、明らかにそれらはすべて互いに同じであり、最後のものと同じです配列に挿入されるオブジェクト。
誰かがこの問題で私を助けてくれませんか?これは私のコードです:
int counter=0;
for (int j=0; j<rows; j++)
{
Product *product ;
product = [[Product alloc] init];
int numberr= [product getImageNumber];
[wineList addObject:product];
counter = counter + 1;
}
オブジェクトを追加した後、配列のコンテンツをテストしていますが、配列内の各アイテムに対して同じ結果が得られています
//testing
Product *producttest1 = wineList[1];
int numbertest1= [producttest1 getImageNumber];
Product *producttest2 = wineList[20];
int numbertest2= [producttest2 getImageNumber];
Product
これは私が持っているクラスの定義です:
#import "Product.h"
@implementation Product
int imageNumber;
bool isInCase;
-(id) init {
imageNumber = (arc4random() % 11) + 1;
isInCase = false;
return self;
}
-(int) getImageNumber {
return imageNumber;
}
-(void) setImageNumber:(int) number {
imageNumber = number;
}