我有一个方法:
- (CGPoint) calculateVectorBetweenThisPoint:(CGPoint)firstPoint andThisPoint:(CGPoint)secondPoint
{
float xDif = firstPoint.x - secondPoint.x;
float yDif = firstPoint.y - secondPoint.y;
return CGPointMake(xDif, yDif);
}
我尝试按如下方式调用它:
- (float) angleBetweenThisPoint:(CGPoint)firstPoint andThisPoint:(CGPoint)secondPoint
{
// COMPILE ERROR HERE: Invalid Initializer
CGPoint vector = [self calculateVectorBetweenThisPoint:firstPoint andThisPoint:secondPoint];
return atan2(vector.x, vector.y);
}
但是我得到了一个编译错误,我尝试使用该方法:“无效的初始化程序”。
我做错了什么?
答案 0 :(得分:5)
在使用之前是否已声明calculateVectorBetweenThisPoint:andThisPoint:
?如果不是,编译器将假定返回类型为id
,这绝对是放入CGPoint
的无效内容。