我是iOS编程新手。我现在正在开发一些SDK框架。我有一个有三个字符的命令:'ESC' 'E' '1',我想把这三个字符组合起来生成一个NSString并把这个NSString放到框架中。因此,其他人可以直接在框架中使用这个常量。
有人知道怎么做这个吗?因为在constant.h文件中,您不能使用任何运行时函数,如StringWithFormat。
我还考虑使用u来组合三个字符。这样做:NSString *message2 = @"\u001b\u002d\u0031";但它失败了。\u001b\u002d\u0031而不是ESC+E+1
u
通用字符受iso10646的限制,排除某些字符。你特别感兴趣的是ESC。但是你可以用八进制编码:
NSString *message2 = @" 33E1";
注意,通常不把这些放在头文件中。通常是这样实现的:
MYMessages.h
// Declare it here
extern NSString * const MYMessage2;
MYMessages.m
// Define it here
NSString * const MYMessage2 = @"...";
尽可能避免通用文件,如constant.h
。将常量放在最接近匹配的头文件中。例如,NSGlobalDomain
是在NSUserDefaults.h
中定义的字符串常量,因为它与用户默认值一起使用。没有全局的"CocoaStringConstants.h"文件