当我在一些NSDictionary中存储NSString并将该字典记录到控制台时,如下所示:
NSString *someString = @"Münster";
NSDictionary *someDict = [ NSDictionary dictionaryWithObjectsAndKeys:
someString, @"thestring" ];
NSLog ( @"someDict: %@", [ someDict description ] );
Run Code Online (Sandbox Code Playgroud)
控制台输出如下所示:
unicode_test[3621:903] someDict:
{
thestring = "M\U00fcnster";
}
Run Code Online (Sandbox Code Playgroud)
字符串的unicode字符转义.是否有任何方法可以将NSString转换为此转义表示形式?
我希望我没有在ObjC手册中跳过这一部分,但可以从其中一个类方法中引用一个类吗?就像在PHP中一样,你会使用"this"来引用当前实例,而"self"引用实例的类,ObjC等同于"this"将是"self",那么什么是ObjC相当于PHP的"self" ,如果有的话?
我正在尝试使用服务器连接器对象实现JSON-RPC解决方案,该服务器连接器对象从服务器获取可用功能列表
NSDictionary *functions = [server
callJSONFunction: @"exposedFunctions" arguments: nil];
Run Code Online (Sandbox Code Playgroud)
这是一个简化的描述,因为callJSONFunction实际上触发了异步NSURLConnection.
函数列表的一个元素由一个描述目标c选择器的字符串,将使用上述机制调用的原始函数名,函数签名和一个可选的参数名数组组成.
例如,函数列表可能如下所示:
(
@"someFunctionWithArgumentOne:argumentTwo:" =
{
signature = @"@@:@@",
functionName = @"someFunction",
arguments = ( @"arg_one", @"arg_two" )
},
@"anotherFunction" =
{
signature = @"@@:",
functionName = @"anotherFunction"
}
)
Run Code Online (Sandbox Code Playgroud)
成功检索功能列表后,选择器将class_addMethod在循环中添加到服务器连接器实例中:
for ( NSString *selectorName in functions ) {
SEL aSelector = NSSelectorFromString ( selName );
IMP methodIMP = class_getMethodImplementation (
[ self class ], @selector ( callerMethod: ) );
class_addMethod ( [ self class ], …Run Code Online (Sandbox Code Playgroud)