如何在iOS头文件中创建CGSize类型的常量?
我想创建CGSize
类型的头文件中的常量,所以我可以在我的应用程序的任何地方使用这个尺寸仅仅使用constantName.height
和constantName.Width
。如何在iOS头文件中创建CGSize类型的常量?
如果为这两种情况下提供语法我希望:1)固定的高度和宽度,2)的高度和宽度为合格值
谢谢
对于固定的高度和宽度
#define MAXSIZE CGSizeMake(320, 480)
对于传值,你可以给定义为CGSize值MySizeType即。但是对于常数,你为什么要传递值。
typedef CGSize MySizeType;
- 对于内部类只
- For external class
编辑
几点意见后不要用宏,我阐述我的答案在这里。
使用宏的缺点是,你的调试器无法知道该恒定。
而且也有更多的方式来创建一个常数取决于你希望你不断的范围,
static CGSize const MAXSIZE = {320, 480};
In .hf ILE
extern CGSize const MAXSIZE;
在.m文件
CGSize const MAXSIZE = {320,480};
非常感谢。我其实需要不断的价值。我只是想知道,如果将来我需要在头文件中创建任何对象(不是常量),它接受来自不同类的传递值。 –
关于MACRO的缺点,我无法得到您的观点。你能用简单的语言详细说明吗?并且您给我的编辑解决方案不适用于写入头文件。我通常为全局使用的变量使用头文件。谢谢 –
1.应该写入.m文件,并且已经解释了2 .. –
这里是你的答案。
1)固定
#define kSize CGSizeMake(13.0f, 34.0f)
2)合格值
#define kSize(width, height) CGSizeMake(width, height)
您可以使用这样
CGSize size = kSize(12.0f,12.0f);
NSLog(@"%@",NSStringFromCGSize(size));
@Sulthan在使用宏来满足这个需求时会出现什么问题? –
相关https://stackoverflow.com/questions/6188672 /其中-DO-你-声明-A-恒定的目标-C – Sulthan
还涉及https://stackoverflow.com/questions/11153156/define-vs-const-in-objective-c – Sulthan