سؤال
ولست بحاجة للعودة إلى NSString من وظيفة:
NSString myfunc ( int x )
{
// do something with x
NSString* myString = [NSString string];
myString = @"MYDATA";
// NSLog(myString);
return *myString;
}
وهكذا، وأدعو هذه الوظيفة والحصول على * myString. هل هذا مؤشر إلى البيانات؟ كيف يمكنني الحصول على البيانات "MYDATA"؟
المحلول
وأود أن إعادة كتابة هذه الوظيفة على النحو التالي:
NSString* myfunc( int x )
{
NSString *myString = @"MYDATA";
// do something with myString
return myString;
}
في الهدف-C هو أكثر شيوعا للعمل مع المؤشر إلى الأشياء، وليس الكائنات أنفسهم، أي في المثال الخاص بك مع NSString*
، وليس NSString
.
وعلاوة على ذلك، @"MYDATA"
بالفعل سلسلة، لذلك لا تحتاج إلى تخصيص وتهيئة myString قبل الاحالة.
لا تنتمي إلى StackOverflow