2017-06-17 64 views
-2

我想“扩展”CGGeometry但这不是一个类。所以我必须创建我可以从我的应用程序使用的外部功能。如何使用C中的函数创建一个文件并从我的应用程序访问它们?

我已经创建了一个头文件与这样的代码:

#ifndef CGGeometry_Extensions_h 
#define CGGeometry_Extensions_h 


CGRect CGRectFromCenterAndSize(CGPoint center, CGSize size) { 
    CGFloat width = [size width]; //1 
    CGFloat height = [size height]; //2 
    CGFloat x = center.x - width; 
    CGFloat y = center.y - height; 
    return CGRectMake(x, y, width, height); 
} 

#endif /* CGGeometry_Extensions_h */ 

我已经在线路编译错误标记为\\1\\2

为接收器类型“CGSize”(又名结构CGSize )

有什么不对?

回答

0

我认为这些代码是语法错误在C:

CGFloat width = [size width]; //1 
    CGFloat height = [size height]; //2 

我不知道怎么CGFloat定义,这将应该

CGFloat width = size.width  
    CGFloat height = size.height 
+0

该错误消息表示,这是被编译为ObjC ;这不是一个语法错误。这是一个类型问题。 –

+0

我不确定像'CGFloat width = [size width];'在传统的C中有没有类似的语法..它看起来很可笑。 – FesianXu

+0

辉煌,谢谢! – Phox

相关问题