2011-04-19 54 views
1

我來自PHP背景,我是Objective C新手。我在var將它標識爲指針之前得到一個星號。然而星號後面的星號是什麼意思?我已經看到了這兩種方式,這不是一個錯誤。風格與意義相同嗎?Objective-c語法 - 類* var vs類* var

Class *var 
Class* var 
+1

這個問題剛剛問不到24小時前? – 2011-04-19 17:00:44

+1

[Objective-C中星號的位置]可能的重複(http://stackoverflow.com/questions/1105815/placement-of-the-asterisk-in-objective-c) – 2011-04-19 17:01:07

+0

@ Smarta $$ Roger - How do你接受這裏的答案嗎? – hogsolo 2011-04-19 17:42:31

回答

2

相同的意思。在多個變量聲明的情況下,在類名後使用星號有點誤導;例如,在此行中:

Myclass* a, b; 

星號只適用於a。但有些人認爲*是數據類型的一部分,因此屬於類名。

2

這兩個語句在語義上是等價的。這是一個偏好問題。有一點需要注意:

Class* var1, var2; 

該聲明宣稱VAR1是Class*但VAR2 Class。一個指針聲明他們兩個類:

Class *var1, *var2; 

這就是爲什麼我喜歡的分組附近的變量名的星號,即使它是不那麼「正確」的,以你聲明的類型。

0

在這種情況下,空格並不重要,所以你可以寫。

1

就像C和C++一樣,它是風格化的。