Objective-C NSString问题

时间:2009-03-02 12:48:13

标签: objective-c nsstring

我需要从函数返回一个NSString:

NSString myfunc ( int x )
{
    // do something with x  
    NSString* myString = [NSString string];
    myString = @"MYDATA";   
    // NSLog(myString);

    return *myString;       
}

所以,我调用这个函数并得到* myString。那是指向数据的指针吗?我怎样才能获得“MYDATA”数据?

1 个答案:

答案 0 :(得分:13)

我会按以下方式重写此函数:

NSString* myfunc( int x )
{
   NSString *myString = @"MYDATA";

   // do something with myString
   return myString;        
}

在Objective-C中,更常见的是使用指向对象的指针,而不是对象本身,即在NSString*的示例中,而不是NSString

此外,@"MYDATA"已经是一个字符串,因此您无需在分配之前分配和初始化myString。