
谢谢,
解决方法 Objective-C对象总是通过引用传递(使用指针) – 您不能通过值传递它们.即以下是好的:
- (voID)mutateArray:(NSMutableArray*)array { // alter array ...} …并且可以是例如……像这样调用:
NSMutableArray *array = ...;[self mutateArray:array];
还有可能通过引用传递指针:
- (voID)newArray:(NSMutableArray **)array;
在这种情况下,数组用作out参数 – 您将引用传递给指针以接收实例:
- (voID)newArray:(NSMutableArray **)array { *array = [[NSMutableArray alloc] init];} ……可以像这样调用:
NSMutableArray *array = nil;[self newArray:&array];
通常只有在已经使用了返回值并且必须返回其他信息时才能看到使用out参数.一个例子就是dreamlax指出的错误信息.
总结以上是内存溢出为你收集整理的在Objective-C中通过引用传递数组全部内容,希望文章能够帮你解决在Objective-C中通过引用传递数组所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)