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

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

您好,請問c++標準庫中的namespace是如何組織的?

您好,請問c++標準庫中的namespace是如何組織的?

C++ C
慕娘9325324 2021-12-03 11:07:17
是單用一個頭文件,然后創建一個namespace在里面實現申明與定義,還是單放申明,然后實現在其他文件中?
查看完整描述

2 回答

?
aluckdog

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

一般的用法是在頭文件中用namespace進行組織,避免多個模塊中出現名字沖突,當然其中既可以有聲明也可以有定義,如:
1、頭文件如下:
#include <iostream>
using namespace std;

namespace mynamespace
{
class A
{
public:
A(){cout << "Construction A" << endl;}//構造函數定義
~A(){cout << "Destruction A" << endl;}//析構函數定義
void print();//成員函數聲明
}
}

2、源文件如下:
#include "頭文件.h"

using namespace mynamespace;//引用自己定義的命名空間
void A::print()//成員函數定義
{
cout << "print function." << endl;
}



查看完整回答
反對 回復 2021-12-07
?
慕斯709654

TA貢獻1840條經驗 獲得超5個贊

不一定要用頭文件,namespace里面可以放申明也可以放定義,它只是為了防止不同模塊中的變量或函數名 重名的問題
例如:
namespace A
{
...
int fun(){};//注意函數名相同,定義不一定相同
...
}
namespace B
{
...
int fun(){};//注意函數名相同,定義不一定相同
...
}
有名稱空間域以后加上前綴就可以加以區分
在C++中,是這樣訪問的
A::fun();//表示訪問A中的fun()函數
B::fun();//表示訪問B中的fun()函數



查看完整回答
反對 回復 2021-12-07
  • 2 回答
  • 0 關注
  • 325 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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