Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/96.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective-C语言中需要的句法理解_Objective C_Ios_Xcode_Syntax - Fatal编程技术网

Objective-C语言中需要的句法理解

Objective-C语言中需要的句法理解,objective-c,ios,xcode,syntax,Objective C,Ios,Xcode,Syntax,在过去的一年里,我一直在编写应用程序,但我第一次遇到一个奇怪的选择器参数 - (NSString *)dictionaryForString:(NSDictionary *)dictionary error:(NSError **)error 如您所见,(NSDictionary*)带有一个星号,(NSError**)带有两个星号,那么有一个或两个星号有什么区别呢 感谢此方法通过引用返回错误,也就是说,您将指针的地址传递给它,然后它(可选)设置指针值 NSError *error = nil;

在过去的一年里,我一直在编写应用程序,但我第一次遇到一个奇怪的选择器参数

- (NSString *)dictionaryForString:(NSDictionary *)dictionary error:(NSError **)error
如您所见,
(NSDictionary*)
带有一个星号,
(NSError**)
带有两个星号,那么有一个或两个星号有什么区别呢


感谢

此方法通过引用返回错误,也就是说,您将指针的地址传递给它,然后它(可选)设置指针值

NSError *error = nil;
NSString *result = [obj dictionaryForString: dict error: &error];
if (!result)
    NSLog(@"%@", error);

这是一种常见的C实践。

此方法通过引用返回一个错误,即,您将指针的地址传递给它,然后它(可选)设置指针值

NSError *error = nil;
NSString *result = [obj dictionaryForString: dict error: &error];
if (!result)
    NSLog(@"%@", error);

这是一种常见的C实践。

NSError**表示指向NSError对象的起始内存地址

NSDictionary*表示指向内存中NSDictionary对象的起始地址 NSError**表示指向NSError对象的起始内存地址