重新定义'main',,先前的'main'定义就在这里

时间:2014-05-12 18:03:23

标签: ios objective-c

#import<Foundation/Foundation.h>
@interface Ravi:NSObject
{
int a,b,c;
}
@property int a;
@property int b;
@property int c;
-(void)setValue:(int)x :(int)y;
-(int)getValue;
@end

@implementation Ravi
@synthesize a;
@synthesize b;
@synthesize c;

-(void)setValue:(int)x :(int)y
{
c = x + y;
}

-(int)getValue
{
NSLog(@"value of c is : %d",c);
return 0;
}
@end

int main()
{
Ravi * myobj=[[Ravi alloc]init];
[myobj setValue:23 :23];
[myobj getValue];
return 0;
}

@interface Krishna:NSObject
-(void)mymethod;
@end

@implementation Krishna
-(void)mymethod
{
Ravi * myobj=[[Ravi alloc]init];
myobj.a = 50;
myobj.b = 50;
myobj.c = myobj.a+myobj.b;
NSLog(@"krishna value of c is : %d",myobj.c);
}
@end

 int main()
 {
 Krishna * obj=[[Krishna alloc]init];
 [obj mymethod];
 return 0;
 }

我正在尝试学习目标c并且我的PC上没有xcode。我很喜欢这个在线目标c教程。我使用的是GNU GCC 4.7.2版。当我试图将一个类的变量调用到另一个类时。我得到这个错误“重新定义'主'”

1 个答案:

答案 0 :(得分:2)

您曾将main()定义为

int main()
{
Ravi * myobj=[[Ravi alloc]init];
[myobj setValue:23 :23];
[myobj getValue];
return 0;
}

...稍后您将其重新定义为以下内容:

 int main()
 {
 Krishna * obj=[[Krishna alloc]init];
 [obj mymethod];
 return 0;
 }

删除其中一个实例可以解决编译器错误。