栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++命名空间的用法

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++命名空间的用法

C++中的作用域有文件、函数、复合语句、类,传统的C语言作用域相对于C++少了个类作用域。但是命名冲突的问题却是从C语言时代就开始了,C++继承了C语言为了解决此问题引入了命名空间。

变量命名冲突的程序

#include 
#include 
#include 
// 错误程序,没法区分日本和中国的变量

// 中国人口
float population = 13.1;
std::string capital = "北京";

// 日本人口
float population = 1.4;
std::string capital = "东京";

int main(void) {
	std::cout << "首都:" << population << "人口:" << capital << std::endl;  // 北京
	std::cout << "首都:" << population << "人口:" << capital << std::endl;  // 日本
    
    system("pause");
    return 0;
}

使用命名空间

#include 
#include 
#include 
// 使用命名空间来区分变量

// China命名空间,中国人口
namespace China {
    float population = 13.1;
    std::string capital = "北京";
}

// Japan命名空间,日本人口
namespace Japan {
    float population = 1.4;
    std::string capital = "东京";
}

int main(void) {
	std::cout << "首都:" << China::population << "人口:" << China::capital << std::endl;  // 北京
	std::cout << "首都:" << Japan::population << "人口:" << Japan::capital << std::endl;  // 日本

    system("pause");
    return 0;
}

首都:13.1人口:北京
首都:1.4人口:东京

使用命名空间内的特定量

#include 
#include 
#include 
// 使用命名空间来区分变量

// China命名空间,中国人口
namespace China {
    float population = 13.1;
    std::string capital = "北京";
}

// Japan命名空间,日本人口
namespace Japan {
    float population = 1.4;
    std::string capital = "东京";
}

using Japan::population;  // 这里只使用命名空间中的一个变量
int main(void) {
	std::cout << "首都:" << China::population << "人口:" << China::capital << std::endl;  // 北京
	std::cout << "首都:" << population << "人口:" < 

首都:13.1人口:北京
首都:1.4人口:东京

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1008413.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号