objective-c – 不完整的实现(xcode错误?)

objective-c – 不完整的实现(xcode错误?),第1张

概述// 9.1.h #import <Foundation/Foundation.h>@interface Complex : NSObject { double real; double imaginary;}@property double real, imaginary;-(void) print;-(void) setReal: (double) and // 9.1.h

#import <Foundation/Foundation.h>@interface Complex : NSObject {    double real;    double imaginary;}@property double real,imaginary;-(voID) print;-(voID) setReal: (double) andImaginary: (double) b;-(Complex *) add: (Complex *) f;@end
#import "9.1.h"@implementation Complex@synthesize real,imaginary;-(voID) print{    NSLog(@ "%g + %gi ",real,imaginary);}-(voID) setReal: (double) a andImaginary: (double) b{    real = a;    imaginary = b;}-(Complex *) add: (Complex *) f{    Complex *result = [[Complex alloc] init];    [result setReal: real + [f real] andImaginary: imaginary + [f imaginary]];    return result;}@end

在最后的@end行,Xcode告诉我实现不完整.代码仍然按预期工作,但我是新手,我担心我错过了什么.据我所知,这是完整的.有时我觉得Xcode会挂起过去的错误,但也许我只是在失去理智!

谢谢!
-安德鲁

解决方法 在9.1.h中,你错过了’a’.

-(voID) setReal: (double) andImaginary: (double) b;//                       ^ here

代码仍然有效,因为在Objective-C中,选择器的部分可以没有名称,例如

-(ID)initWithControlPoints:(float)c1x :(float)c1y :(float)c2x :(float)c2y//                                    ^           ^           ^

这些方法称为

return [self initWithControlPoints:0.0f :0.0f :1.0f :1.0f];//                                      ^     ^     ^

选择器名称自然是@selector(initWithControlPoints ::: :).

因此,编译器会将您的声明解释为

-(voID)setReal:(double)andImaginary              :(double)b;

由于你没有提供这个-setReal ::方法的实现,gcc会警告你

warning: incomplete implementation of class ‘Complex’warning: method deFinition for ‘-setReal::’ not found

顺便说一句,如果你只是想要一个复杂的值,但不需要它是一个Objective-C类,那么就有C99 complex,例如

#include <complex.h>...double complex z = 5 + 6I;double complex w = -4 + 2I;z = z + w;printf("%g + %gi\n",creal(z),cimag(z));
总结

以上是内存溢出为你收集整理的objective-c – 不完整的实现(xcode错误?)全部内容,希望文章能够帮你解决objective-c – 不完整的实现(xcode错误?)所遇到的程序开发问题。

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

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存