最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++命名空間使用詳細(xì)介紹

 更新時(shí)間:2022年09月09日 10:11:17   作者:AKA.瞳源治  
考慮一種情況,當(dāng)我們有兩個(gè)同名的人,Zara,在同一個(gè)班里。當(dāng)我們需要對(duì)它們進(jìn)行區(qū)分我們必須使用一些額外的信息和它們的名字,比如它們生活在不同的區(qū)域或者興趣愛好什么的,在C++程序中也會(huì)遇到同樣的情況,所以命名空間就此產(chǎn)生

1.前言

在c++中,為了避免代碼名稱上所產(chǎn)生沖突,引入了命名空間這個(gè)東西。

命名空間相當(dāng)于劃分出一定的空間,為特定的類型,函數(shù)和變量等的名稱(也就是標(biāo)識(shí)符)提供了一個(gè)范圍。

命名空間之內(nèi)的標(biāo)識(shí)符訪問(wèn)彼此沒(méi)有限制,命名空間之外的標(biāo)識(shí)符可通過(guò)使用每個(gè)標(biāo)識(shí)符的完全限定名來(lái)訪問(wèn)成員,也可通過(guò)單個(gè)標(biāo)識(shí)符的using聲明或命名空間中所有標(biāo)識(shí)符的using指令來(lái)訪問(wèn)成員。

命名空間可以定義在幾個(gè)不同的部分中,因此命名空間是由幾個(gè)單獨(dú)定義的部分組成的。一個(gè)命名空間的各個(gè)組成部分可以分散在多個(gè)文件中。

2.定義

命名空間的定義使用關(guān)鍵字namespace,后跟命名空間的名稱。

namespace namespace_name

{

// 代碼聲明

}

調(diào)用帶有命名空間的函數(shù)或者變量時(shí),需要在前面加上命名空間的名稱(使用完全限定名)。

namespace_name::code; // code 可以是變量或函數(shù)

樣例:

#include<iostream>
using namespace std;
namespace A 
{
    void func() 
    {
        cout << "A" << endl;
    }
}
// 第二個(gè)命名空間
namespace B {
    void func() 
    {
        cout << "B" << endl;
    }
}
int main()
{
    // 調(diào)用第一個(gè)命名空間中的函數(shù)
    A::func();
    // 調(diào)用第二個(gè)命名空間中的函數(shù)
    B::func();
    return 0;
}

結(jié)果:

3.using 指令

當(dāng)使用using 指令時(shí),便可不用加完全限定名直接訪問(wèn)。

這個(gè)指令會(huì)讓編譯器直接使用namespace里的所有名稱。

樣例:

#include<iostream>
using namespace std;
namespace A 
{
    void func() 
    {
        cout << "A" << endl;
    }
}
// 第二個(gè)命名空間
namespace B {
    void func() 
    {
        cout << "B" << endl;
    }
}
using namespace B;
int main()
{
    // 只會(huì)調(diào)用第二個(gè)命名空間中的函數(shù)
    func();
    return 0;
}

結(jié)果:

4.using 聲明

使用 using 聲明,以將一個(gè)標(biāo)識(shí)符引入范圍:

#include<iostream>
using namespace std;
namespace A
{
    class a
    {
    public:
        void func()
        {
            cout << "A" << endl;
        }
    };
}
using namespace A;
A::a aa;
int main()
{
    aa.func();
    return 0;
}

結(jié)果為:

5.嵌套的命名空間

一個(gè)命名空間中可以定義另一個(gè)命名空間,一般形式為:

namespace namespace_name1 {
   // 代碼聲明
   namespace namespace_name2 {
      // 代碼聲明
   }
}

像上列代碼,如果要訪問(wèn)namespace_name2中的成員,我們得使用::運(yùn)算符來(lái)訪問(wèn):

// 訪問(wèn) namespace_name2 中的成員

using namespace namespace_name1::namespace_name2;

// 訪問(wèn) namespace_name1 中的成員

using namespace namespace_name1;

樣例:

#include<iostream>
using namespace std;
namespace A
{
    void func()
    {
        cout << "A" << endl;
    }
    // 第二個(gè)命名空間
    namespace B 
    {
        void func()
        {
            cout << "B" << endl;
        }
    }
}
using namespace A::B;
int main()
{
    // 只會(huì)調(diào)用第二個(gè)命名空間中的函數(shù)
    func();
    return 0;
}

結(jié)果為:

到此這篇關(guān)于C++命名空間使用詳細(xì)介紹的文章就介紹到這了,更多相關(guān)C++命名空間內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 將?C++?類型屬性暴露給?QML

    將?C++?類型屬性暴露給?QML

    這篇文章主要介紹了將?C++?類型屬性暴露給?QML,?QML?是一種基于?JavaScript?的聲明式語(yǔ)言。在?Qt5中,QML有了長(zhǎng)足進(jìn)步,并且同?C++?并列成為?Qt?的首選編程語(yǔ)言下面一起進(jìn)入文章學(xué)習(xí)?QML的條件下也看看如何將將?C++?類型屬性暴露給?QML,需要的朋友可以參考一下
    2021-12-12
  • C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)詳細(xì)解析二叉樹的操作

    C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)詳細(xì)解析二叉樹的操作

    二叉樹可以簡(jiǎn)單理解為對(duì)于一個(gè)節(jié)點(diǎn)來(lái)說(shuō),最多擁有一個(gè)上級(jí)節(jié)點(diǎn),同時(shí)最多具備左右兩個(gè)下級(jí)節(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)。本文將詳細(xì)介紹一下C++中二叉樹的實(shí)現(xiàn)和遍歷,需要的可以參考一下
    2022-04-04
  • C++11中強(qiáng)類型枚舉的使用

    C++11中強(qiáng)類型枚舉的使用

    本文主要介紹了C++11中強(qiáng)類型枚舉的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • c語(yǔ)言指針之二級(jí)指針示例

    c語(yǔ)言指針之二級(jí)指針示例

    這篇文章主要介紹了c語(yǔ)言指針中的二級(jí)指針示例,需要的朋友可以參考下
    2014-04-04
  • C語(yǔ)言 動(dòng)態(tài)分配數(shù)組案例詳解

    C語(yǔ)言 動(dòng)態(tài)分配數(shù)組案例詳解

    這篇文章主要介紹了C語(yǔ)言 動(dòng)態(tài)分配數(shù)組案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • C語(yǔ)言之把數(shù)組名作函數(shù)參數(shù)的四種情況說(shuō)明

    C語(yǔ)言之把數(shù)組名作函數(shù)參數(shù)的四種情況說(shuō)明

    這篇文章主要介紹了C語(yǔ)言之把數(shù)組名作函數(shù)參數(shù)的四種情況說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • C語(yǔ)言數(shù)據(jù)類型和格式說(shuō)明符基礎(chǔ)教程示例

    C語(yǔ)言數(shù)據(jù)類型和格式說(shuō)明符基礎(chǔ)教程示例

    這篇文章主要為大家介紹了C語(yǔ)言數(shù)據(jù)類型和格式說(shuō)明符基礎(chǔ)教程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • C++實(shí)踐排序函數(shù)模板項(xiàng)目的參考方法

    C++實(shí)踐排序函數(shù)模板項(xiàng)目的參考方法

    今天小編就為大家分享一篇關(guān)于C++實(shí)踐排序函數(shù)模板項(xiàng)目的參考方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-02-02
  • C++利用函數(shù)動(dòng)態(tài)創(chuàng)建二維數(shù)組

    C++利用函數(shù)動(dòng)態(tài)創(chuàng)建二維數(shù)組

    這篇文章主要為大家詳細(xì)介紹了C++利用函數(shù)動(dòng)態(tài)創(chuàng)建二維數(shù)組,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • C語(yǔ)言基礎(chǔ)解析之分支與循環(huán)語(yǔ)句

    C語(yǔ)言基礎(chǔ)解析之分支與循環(huán)語(yǔ)句

    C語(yǔ)言是一門結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言,當(dāng)C語(yǔ)言用來(lái)描述生活中的事物時(shí),會(huì)用到三種結(jié)構(gòu):順序結(jié)構(gòu)(不去贅述),選擇結(jié)構(gòu)(對(duì)應(yīng)分支語(yǔ)句),循環(huán)結(jié)構(gòu)(對(duì)應(yīng)循環(huán)語(yǔ)句),分支語(yǔ)句:分支語(yǔ)句分為兩種,一種是if語(yǔ)句,一種是switch語(yǔ)句
    2021-09-09

最新評(píng)論

高青县| 北宁市| 临海市| 垣曲县| 龙江县| 阜新市| 金秀| 龙川县| 醴陵市| 扎赉特旗| 东宁县| 房山区| 元阳县| 德州市| 兴宁市| 夏邑县| 宜宾县| 巴塘县| 安顺市| 禄丰县| 福安市| 托里县| 浪卡子县| 金门县| 伊吾县| 盐城市| 额尔古纳市| 麦盖提县| 温州市| 大洼县| 应城市| 崇仁县| 青岛市| 黎平县| 正阳县| 瓮安县| 伊金霍洛旗| 襄垣县| 鱼台县| 大宁县| 成都市|