首頁 >後端開發 >C++ >C 建構函式語法:為什麼 `Foo foo2();` 會導致錯誤?

C 建構函式語法:為什麼 `Foo foo2();` 會導致錯誤?

Linda Hamilton
Linda Hamilton原創
2024-11-30 14:13:16406瀏覽

C   Constructor Syntax: Why Does `Foo foo2();` Cause an Error?

錯誤:請求非類別類型「非類別類型」中的成員

在C 中聲明物件時,使用兩個建構函數的語法正確。在提供的程式碼中,嘗試使用無參數建構函式建立物件會導致錯誤:

此語法不正確,因為它類似於函數聲明,導致編譯器將其解釋為函數聲明。使用無參構造函數宣告物件的正確語法是:

透過刪除括號,編譯器將正確地將 foo2 識別為 Foo 類別的物件。

或者,如果為了清楚起見,您希望使用括號,請確保包含建構子參數:

以上是C 建構函式語法:為什麼 `Foo foo2();` 會導致錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn