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

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

您如何在C ++中正確使用名稱空間?

您如何在C ++中正確使用名稱空間?

C++
暮色呼如 2019-10-04 15:55:50
我來自Java背景,這里使用的是包,而不是名稱空間。我習慣將可以一起工作的類組合成一個完整的對象放入包中,然后在該包中重新使用它們。但是現在我正在使用C ++。您如何在C ++中使用名稱空間?您是為整個應用程序創建單個名稱空間,還是為主要組件創建名稱空間?如果是這樣,如何從其他命名空間中的類創建對象?
查看完整描述

3 回答

?
守著星空守著你

TA貢獻1799條經驗 獲得超8個贊

命名空間本質上是軟件包。它們可以這樣使用:


namespace MyNamespace

{

  class MyClass

  {

  };

}

然后在代碼中:


MyNamespace::MyClass* pClass = new MyNamespace::MyClass();

希望能有所幫助。


或者,如果您想始終使用特定的名稱空間,則可以執行以下操作:


using namespace MyNamespace;


MyClass* pClass = new MyClass();

編輯:按照bernhardrusch所說,我傾向于完全不使用“使用名稱空間x”語法,我通常在實例化對象時明確指定名稱空間(即,我顯示的第一個示例)。


并按下面的要求,您可以使用任意數量的名稱空間。


查看完整回答
反對 回復 2019-10-04
?
慕尼黑5688855

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

為了避免說出一切,Mark Ingram已經說了一些使用命名空間的提示:


避免在頭文件中使用“使用名稱空間”指令-這將為導入該頭文件的程序的所有部分打開名稱空間。在實現文件(* .cpp)中,這通常不是大問題-盡管我更喜歡在功能級別上使用“使用名稱空間”指令。


我認為名稱空間主要用于避免命名沖突-不一定要組織代碼結構。我主要用頭文件/文件結構來組織C ++程序。


有時,較大的C ++項目中使用名稱空間來隱藏實現細節。


using指令的附加說明:有些人喜歡僅對單個元素使用“ using”:


using std::cout;  

using std::endl;


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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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