4 回答

TA貢獻(xiàn)1863條經(jīng)驗(yàn) 獲得超2個(gè)贊
變量p是一個(gè)指針,指向struct類型或者class類型;
++p是指向下一個(gè)struct類型或者class類型的存儲(chǔ)空間,然后對(duì)這個(gè)空間的a變量做操作
如果是p++,則是先對(duì)這個(gè)空間的a變量做一些操作,然后再++;

TA貢獻(xiàn)1921條經(jīng)驗(yàn) 獲得超9個(gè)贊
C++中運(yùn)算符“->”是一個(gè)整體,用于指向結(jié)構(gòu)體、class等含有子數(shù)據(jù)的指針,來獲取子數(shù)據(jù);(如果不是指針則通常通過“.”運(yùn)算符獲得子數(shù)據(jù)。
++P你應(yīng)該很清楚,就是P的自加1,這里++預(yù)算符在前面,相當(dāng)于P先自加1然后再執(zhí)行“->"運(yùn)算。另外,這里的P是一個(gè)地址(因?yàn)楹竺娴倪\(yùn)算符是”->“)。
綜合以上,你這一句的意思是:地址加1(即地址下移一位),然后根據(jù)新地址獲得子數(shù)據(jù)a的值。

TA貢獻(xiàn)1834條經(jīng)驗(yàn) 獲得超8個(gè)贊
p1.GETX()
是調(diào)用結(jié)構(gòu)體或者類p1的GETX函數(shù)啊,
LZ可以看p1的聲明類型,再看那個(gè)類型的定義,可以找到GETX函數(shù)
一般訪問類里面函數(shù)有兩種方法,這主要得看p1是什么類型,如果p1是類的對(duì)象(比如A p1),那么就是p1.GETX()。
如果是結(jié)構(gòu)體指針變量(A *p1),那么就是p1->GETX()了。
另外p1->GETX()等價(jià)于(*p1).GETX()。
添加回答
舉報(bào)