Objective C的新手 - 现在正在构建构造函数,并且无法在没有错误的情况下完成它。除了初始化之外,我认为我已经完成了所有工作。谢谢你的期待。
我得到的错误:
main.m:在函数中 - [Person initWithInfo:weight:gender:]: main.m:46:9:错误:打印未声明(首次使用此功能) - (void)print { ^
main.m:46:9:注意:每个未声明的标识符仅报告一次 对于每个函数,它出现在main.m中:46:15:错误:预期;之前 {令牌 - (无效)打印{
- 醇>
main.m:85:1:错误:输入结束时的预期声明或声明 }
#import <Foundation/Foundation.h>
@interface Person : NSObject {
int age, weight;
NSMutableString * gender;
}
-(id) initWithInfo : (int) a
weight: (int) w
gender: (NSString *) s;
-(void) print;
-(void) setAge : (int) a;
-(void) setWeight : (int) w;
-(void) setGender : (NSString *) s;
-(int) getAge;
-(int) getWeight;
-(NSString *) getGender;
@end
@implementation Person
-(id) initWithInfo : (int) a
weight: (int) w
gender: (NSString *) s{
self = [super init];
if (self)
{
self.weight = w;
self.age = a;
self.gender = s;
}
return self;
-(void) print {
NSLog(@"You are %d years old, weight %d pounds, and are a %@.", age, weight, gender);
}
-(void) setAge : (int) a{
age = a;
}
-(void) setWeight : (int) w{
weight = w;
}
-(void) setGender : (NSString *) s{
gender = [[NSMutableString alloc] initWithString : s];
}
-(int) getAge{return age;}
-(int) getWeight{return weight;}
-(NSString *) getGender{return gender;}
@end
int main(){
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
Person * Leo =
[ [Person alloc]
initWithInfo : 28
weight: 200
gender: @"Male"];
//[Leo print];
[pool drain];
return 0;
}
答案 0 :(得分:1)
你的
之后似乎错过了一个结束括号-(id) initWithInfo : (int) a
weight: (int) w
gender: (NSString *) s{
功能。
return self;
然后没有结束括号。放一个&#34;}&#34;应该这样做。