好吧,我可能沒有試圖學習OOP的業務,而且我遇到了最簡單的第一個程序問題。我收到一條消息,說我的實現不完整(我評論了下面給出4個錯誤的那一行)。哪裏不對?它需要一個類型說明符,但不要將它與NSString一起使用?我注意到NSString在實現中不會像在界面中那樣將顏色更改爲XCODE中的綠色類型。不要笑,但我到底失去了什麼?
此外,爲什麼我們需要在接口中聲明方法並在實現中輸入完全相同的東西?也就是說,爲什麼需要在兩者中輸入startDrinking:(NSString *)newBeverage?
#import <Foundation/Foundation.h>
@interface Drinks : NSObject {
NSString *beverage;
}
- (void) startDrinking: (NSString*) newBeverage; // setter
- (void) printDrink;
@end
@implementation Drinks
{
//THIS NEXT LINE IS WHERE I GET 4 ERRORS
- (void) startDrinking: (NSString *) newBeverage {
beverage = [[NSString alloc]initwithString:newBeverage]
}
-(void) printDrink {
NSLog(@"How is your", beverage);
}
}
@end
int main (int argc, const char * argv[]) {
Drinks *beverage = [[Drinks alloc] init];
[beverage startDrinking:@"Lemonade"];
return 0;
}
你得到的錯誤是什麼? – 2013-02-26 03:07:34