2012-01-20 24 views
0

道歉或詢問什麼可能是一個非常簡單的問題,但我是一般的C語法語言的新手,並且發現使我困惑的東西。Objective C語法查詢

我已經看到了幾個創建CGFloat對象的代碼示例,然後將它們看作是某種隱式數組,例如。

CGFloat newFloat[3] = {value1,value2,value}; 

這是Objective C的一個普遍適用的概念來創建數組,或者是它的東西內置到CGFloat的空間出手3D點?

非常感謝您的幫助。

+0

如果你現在花一點時間在Objective-C –

+0

上閱讀一本像樣的入門書籍,那麼你將長期節省很多時間感謝Paul,我在他們中間的兩個人中,我只是我不確定我是否正確解釋了這一點。 – AustinRathe

+1

祝你好運 - 確保Objective-C的書籍涵蓋了所有的C基礎知識,如果不是的話,你可能也想用一本像樣的C書籍來補充你的閱讀。 –

回答

3

這被稱爲數組初始化並且是語言的一部分。

{value1,value2,value}零件被稱爲初始化器,只要定義一個數組,就可以在分配的右側使用該零件。當初始化器元件的數量對應於數組的指定大小,你實際上並不需要明確指定大小:

CGFloat newFloat[] = {value1, value2, value}; 

這使得維護更加容易,因爲在最後沒有按添加新元素不要強迫你更新尺寸。

此類初始器也支持結構。

+0

你也應該提到,在初始化列表給出時,數組大小是可選的。 – Mahesh

3

這不是一個隱式數組,左邊顯式聲明瞭一個長度爲3的CGFloat數組的變量。該語法實際上是C標準的一部分。