我最近正在審查一些代碼,並且遇到了一些我感到困惑的東西。說我有一個功能,int getNewNumber(int num, int dir)
,像這樣實現的:使用將該變量作爲參數的函數初始化一個變量
int getNewNumber(int num, int dir) {
int newNum = num;
if(dir == 1) {
newNum++;
} else {
newNum--;
}
return newNum;
}
現在,調用函數時,我有這樣的事情:
int number = getNewNumber(number, 1);
是它被傳遞到newNum之前初始化爲0?我很困惑你在初始化時如何使用變量作爲參數。
在外部範圍中是否存在另一個具有相同名稱的變量? –
該代碼不應編譯爲C++代碼 - 您的函數需要返回類型。 –
您正在閱讀至少未指定行爲的未初始化變量。 – nwp