objective-c – XCode 4.0中的“不完整实现”警告

objective-c – XCode 4.0中的“不完整实现”警告,第1张

概述此应用程序是来自 Cococa and Objective C Up and Running书籍的重写代码. 当我试着在开始时理解一切时,我想知道,我在哪里犯了错误,在下面的代码中.对我来说,一切都很好. 因此,您能否帮我确定警告的来源: Incomplete Implementation 我在Photo.m源代码文件中的@implementation Photo行中得到了这个? Photo.h 此应用程序是来自 Cococa and Objective C Up and Running书籍的重写代码.

当我试着在开始时理解一切时,我想知道,我在哪里犯了错误,在下面的代码中.对我来说,一切都很好.

因此,您能否帮我确定警告的来源:

Incomplete Implementation

我在Photo.m源代码文件中的@implementation Photo行中得到了这个?

Photo.h

#import <Foundation/Foundation.h>@interface Photo : NSObject{    Nsstring* caption;    Nsstring* photographer;    }+ (Photo*) photo;- (Nsstring*) caption;- (Nsstring*) photographer;- (voID) setCaption: (Nsstring*)input;- (voID) setPhotographer: (Nsstring*)input;@end

Photo.m

#import "Photo.h"@implementation Photo  // <- Incomplete Implementation?- (ID)init{    self = [super init];    if (self) {        [self setCaption:@"Default Caption"];        [self setPhotographer:@"Default Photographer"];    }    return self;}+ (Photo*) caption {    Photo* newPhoto = [[Photo alloc] init];    return [newPhoto autorelease];}- (Nsstring*) caption {    return caption;}- (Nsstring*) photographer {    return photographer;}- (voID) setCaption:(Nsstring *)input {    ;    caption = [input retain];}- (voID) setPhotographer: (Nsstring *)input {    [photographer autorelease];    photographer = [input retain];}- (voID)dealloc{    [self setCaption:nil];    [self setPhotographer:nil];    [super dealloc];}@end

我使用SNow Leopard 10.6.7和Xcode 4.0.0.

解决方法 除非是拼写错误,否则你的Class方法定义为(Photo *)Photo;没有实现(有一个(Photo *)Caption {}方法看起来只是一个意外.

编辑:一个更简单的方法是使用属性,这是一个为我们创建变量的getter和setter的快捷方式(请参阅此链接以获得一个好的初学者教程:iPhone 101),如下所示:

在你的.h文件中:

@interface Photo : NSObject{    Nsstring* caption;    Nsstring* photographer;    }@property (nonatomic,retain) Nsstring *caption;@property (nonatomic,retain) Nsstring *photographer;@end

在.m文件中:

@implementation Photo@synthesize caption,photographer;    //Other stuff (init and any custom methods for class etc.. NOT getters and setters for variables)    - (voID)dealloc    {        ;        [photographer release];        [super dealloc];    }
总结

以上是内存溢出为你收集整理的objective-c – XCode 4.0中的“不完整实现”警告全部内容,希望文章能够帮你解决objective-c – XCode 4.0中的“不完整实现”警告所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1059056.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存