指針這是從Mac上學習Objective-C的一個問題...功能在Objective-C的
函數的指針
我輸入什麼,按配方,是:
NSString *boolString (BOOL yesNo) {
if (yesNo) { return (@"YES");
} else { return (@"NO");
} } // boolString
第一行中的指針星號似乎並不必要,但刪除它會導致出現錯誤消息。但它有什麼作用?在
NSString * boolString (yesNo);
似乎正在進行的是一個函數被定義爲一個指向NSString的指針。沒有星號的功能
NSLog (@"are %d and %d different? %@", 5, 5, boolString(areTheyDifferent));
返回YES或NO的NSString。但是,如果它是一個指針,它怎麼能返回一個NSString呢?它可能會返回NSString的ADDRESS;或者如果取消引用,它可以返回該地址的CONTENTS(一個NSString,如YES或NO)。然而我看不到它被解除引用的地方。
下次請格式化您的代碼。 – 2010-05-29 03:25:52