このメソッドはCardクラス内にあります。私が望むのは値を減算することです。以下は私が作成した方法です。しかし、それは私にこのポストのタイトルで述べられているエラーを与える。以下は、エラーが指し示す行です。バイナリ式のオペランドが無効です( 'double'と 'double *')
latestPoints = ([self.points doubleValue] - requiredPoints);
これはどうすればいいですか?私は同じエラーを言っているこのような記事を見たことがあるが、私は何をしたいのか価値があるものは見つけられなかった。
アドバイスお願いします。
Card.h
#import <Foundation/Foundation.h>
@interface Card : NSObject
@property (nonatomic, strong) NSNumber *points;
- (double) subtractPoints: (double *) requiredPoints;
@end
Card.m
#import "Card.h"
@implementation Card
@synthesize points = _points;
- (double) subtractPoints:(double *)requiredPoints
{
double latestPoints;
latestPoints = ([self.points doubleValue] - requiredPoints);
return latestPoints;
}
@end
ダブルポイントではないことを意味しましたか? – rdelmar
私はovjective-cについて何も知らないので、私はここで間違っているかもしれませんが、誤りは全く自明ではありませんか? requiredPointsはポインタです。それに格納されている値を使用するには、まずそれを参照解除する必要があります。私はそれを "ダブル"値で使用することを意味します。 – spicavigo
@rdelmarが正しいです - (double *)引数の型を(double)に変更する必要があります。ダブルスはプリミティブ型であり、値渡しされます。 – Steve