문제

함수에서 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;        
}

Objective-C에서는 객체 자체가 아니라 객체에 대한 포인터로 작업하는 것이 더 일반적입니다. NSString*, 아니다 NSString.

더구나, @"MYDATA" 이미 문자열이므로 과제 전에 MyString을 할당하고 초기화 할 필요가 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top