我非常困惑,使用指針。在下面的代碼中,如果我設置currentYear = 2010,我預計2010年的值將分配給initYear。但是,當我調試它時,在代碼的第一行,inityear = 2009。在代碼的最後一行,initYear也等於2009,currentYear = 2010.將值傳遞給指針
任何人都可以解釋爲什麼發生這種情況,以及我當今年2010年可以使initYear成爲2010年嗎?謝謝。
下面是代碼:
int initYear = pEnvContext->currentYear;
for (int i=0; i < m_numberOfRuns; i++)
{
UpdateMonteCarloInput(pEnvContext,i);
pEnvContext->run=i;
pEnvContext->currentYear=initYear;
謝謝。所以,pEnvContext實際上指向currentYear的地址,它是一個地址,而不是一個值。我對麼?對不起,這個愚蠢的問題,但我是新來的C + +,是非常困惑。 – James
'pEnvContext'指向某個類,'currentYear'是該類的成員變量,您可以通過編寫'pEnvContext-> currentYear'來訪問它。 – Danvil