亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問 什么是“未聲明的標識符”錯誤,如何解決?

請問 什么是“未聲明的標識符”錯誤,如何解決?

C++
LEATH 2019-09-04 10:05:12
什么是“未聲明的標識符”錯誤,如何解決?什么是未聲明的標識符錯誤?什么是常見原因以及如何解決它們?示例錯誤文本:對于Visual Studio編譯器: error C2065: 'cout' : undeclared identifier對于GCC編譯器: 'cout' undeclared (first use in this function)
查看完整描述

3 回答

?
長風秋雁

TA貢獻1757條經驗 獲得超7個贊

在對話中考慮類似的情況。想象一下,你的朋友對你說,“鮑勃正在過來吃飯,”你不知道鮑勃是誰。你會感到困惑,對吧?你的朋友應該說,“我有一個名叫鮑勃的同事。鮑勃正在過來吃飯?!?nbsp;現在鮑勃已經宣布,你知道你的朋友在談論誰。

當您嘗試使用某個標識符(函數,變量,類等的名稱)時,編譯器會發出“未聲明的標識符”錯誤,并且編譯器沒有看到它的聲明。也就是說,編譯器不知道你指的是什么,因為它之前沒有見過它。

如果在C或C ++中出現這樣的錯誤,則意味著您沒有告訴編譯器您正在嘗試使用的東西。聲明通常位于頭文件中,因此可能意味著您沒有包含相應的標頭。當然,可能你根本就沒有記住要申報該實體。

一些編譯器根據上下文給出更具體的錯誤。例如,嘗試編譯尚未使用clang聲明X x;類型的位置X將告訴您“未知類型名稱X”。這更有用,因為你知道它試圖將其解釋X為一種類型。但是,如果你有int x = y;,在y尚未聲明的地方,它將告訴你“使用未聲明的標識符y”,因為對于確切y代表什么可能有些含糊不清。



查看完整回答
反對 回復 2019-09-10
?
臨摹微笑

TA貢獻1982條經驗 獲得超2個贊

我在自定義類中遇到了同樣的問題,該類是在命名空間中定義的。我試圖使用沒有命名空間的類,導致編譯器錯誤“標識符”MyClass“未定義”。添加

using namespace <MyNamespace>

或者使用類似的

MyNamespace::MyClass myClass;

解決了這個問題。



查看完整回答
反對 回復 2019-09-10
  • 3 回答
  • 0 關注
  • 1237 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號