#define xyz
static xyz myObject *__my_getitem (myObject* a, myObject *b) {
myObject *r;
.........
........
return r;
}
- 什麼是
static
? - 什麼
xyz
與static
- 做爲什麼會出現在
__my_getitem
- 是什麼betweern
myObject* a
和myObject *a
(的*
位置)
#define xyz
static xyz myObject *__my_getitem (myObject* a, myObject *b) {
myObject *r;
.........
........
return r;
}
static
?xyz
與static
__my_getitem
myObject* a
和myObject *a
(的*
位置)什麼是
static
?
這意味着不同的事物在不同的背景下;你需要閱讀你的書以瞭解它的所有含義。在這種情況下,這意味着該函數僅在該源文件中可用,而不是在單獨編譯並鏈接到它的任何文件中。
什麼是
xyz
使用static
?
引起混淆。這是一個空的宏(在第一行中定義),因此,在編譯程序之前,預處理器將不會替換它。
爲什麼會出現在
__my_getitem
*
前一個*
類型改變類型的指針後;所以這意味着函數返回一個指向myObject
的指針。(順便說一句,你不應該有兩個連續_
字符聲明的名稱,這樣的名稱被保留。)
是什麼betweern
myObject* a
和myObject *a
無(*的位置)的差異完全;除了需要分離令牌的地方之外,空白不會改變程序的含義。有些人針對這兩種風格的語義含義打了神聖的戰爭,但語言並不在意。
謝謝邁克....這真的很有幫助 –
什麼是靜態的區別前一個*
?
以「static」開頭的函數定義的範圍受限制。它們只能被同一個源文件中的函數看到和使用。如果在當前文件中發生的處理之外有一個沒有任何價值的函數,或者您想限制使用,以便將來可以修改它,但由於其範圍有限,可能會導致分支較少,您可以這樣做。
什麼是XYZ靜態
在這種特定情況下做的,某某被什麼也沒有更換,所以它什麼都不做。在一般情況下,它可能會修改編譯器如何生成此函數,從而更改「調用約定」。也就是說,xyz對編譯器有一些意義,而不是C語言的一部分。
爲什麼會出現在 __my_getitem
前方的星號它表明__my_getitem函數返回一個指向myObject的。
是什麼 myObject的之間的差* a和myObject的* A(的位置*)
沒什麼,作爲語法是柔性的。
哇.... grt desripctio @scooter ...謝謝 –
請參閱http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list – fasked
回答您的問題:學習C++。 – Bojangles
我建議你拿起C++(或C)的初學者書籍,因爲這是非常基本的東西。 –