问题
I wanna use double pointer and I tried to declare like this.
NSString **a;
but, Xcode showed me the error "Pointer to non-const type 'NSString *' with no explicit ownership" and it couldn't be compiled.
Finally I wanna do like this.
NSString **a;
NSString *b = @"b";
NSString *c = @"c";
a = &b;
*a = c;
NSLog(@"%@",b);//I wanna see "c"
Let me know any advise please.
回答1:
Change to this so that you can explicitly specify the ownership:
NSString *__strong *a;
NSString *b = @"b";
NSString *c = @"c";
a = &b;
*a = c;
NSLog(@"%@",b);//I wanna see "c"
Output:
c
Here is the documentation on __strong.
来源:https://stackoverflow.com/questions/15146733/how-to-declare-variable-of-nsstring-with-double-pointer