Мой код выглядит правильно, но isEqual, используемый для сравнения двух объектов, не работает. Я новичок в iOS. нет большого количества ресурсов для проверки. [box2 isEqual: box1] всегда дает мне №, но он должен дать «Да». что-то не так в моем коде, пожалуйста, предложите мне правильную вещь. заранее спасибо. ожидая лучшего предложения.isEqual не работает должным образом в xcode
#import <Foundation/Foundation.h>
@interface Box:NSObject
{
double length; // Length of a box
double breadth; // Breadth of a box
double height; // Height of a box
}
@property(nonatomic, readwrite) double height; // Property
-(double) volume;
//-(id)initWithLength:(double)l andBreadth:(double)b;
@end
@implementation Box
@synthesize height;
-(id)init
{
self = [super init];
if(self)
{
length = 2.0;
breadth = 3.0;
}
return self;
}
-(double) volume
{
return length*breadth*height;
}
@end
@class Box;
int main (int argc, const char * argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
Box *box1 = [[Box alloc]init]; // Create box1 object of type Box
Box *box2 = [[Box alloc]init];
NSLog (@"hello world");
box1.height = 5.0;
NSLog (@"%ld",[box1 volume]);
if([box2 isEqual:box1])
{
NSLog(@"%b",[box2 isEqual:box1]);
}
[pool drain];
return 0;
}
Они не будут когда-либо равными, поскольку они представляют собой два разных экземпляра. – Desdenova