我試圖傳遞錯誤使用按引用傳遞的主要功能,但是當我編譯下面的代碼我得到一個錯誤的錯誤:的一元無效的類型參數「*」(有「詮釋」)
錯誤:一元的無效類型參數 '*'(有 'INT')
主代碼:
main()
{
.
.
int error=-1;
foo(..., error);
.
.
}
功能代碼:
foo(..., int &error)
{
if (...)
*error = errno;
}
errno是系統調用在linux中設置的標準錯誤。
頭文件定義了整數變量errno,它由系統調用和一些庫函數在發生錯誤時設置,以指示出錯的地方。
引用不是指針。一元'*'是指針。 '錯誤'是一個參考。 –
你的foo函數需要一個參考,你把它當作一個指針 – KostasRim
謝謝你指出 – Namitha