命名空间的using声明:

除了内置类型之外,c++语言还定义了一个内容丰富的抽象数据类型库。

访问库中名字的一个简单方法就是通过using。

我们用到的库函数基本上都属于命名空间std,可以通过::(作用域操作符)从左侧作用域寻找右侧名字,std::cin意思就是使用命名空间std中的名字cin。但这种方法比较繁琐,通过使用using声明,就无需专门前缀也能使用所需的名字。

#include <iostream>
using std::cin;//声明,当我们使用cin时,从命名空间std中获取它
int main(){int i ;cin>>i;//正确cout<<i;//错误,没有using声明需要使用完整名字std::cout<<i;//正确,显式的从std中使用coutreturn 0;
}

注意:

  • 每个名字都需要独立的using声明

    using std::cin;
    using std::cout;
    using std::string;
    
  • 头文件不应包含using声明

    因为头文件的内容会拷贝到所有引用它的文件中去,如果头文件里有某个using声明,每个使用该头文件的文件就都会有这个声明。由于不经意间包含了一些名字,有可能引起名字冲突。

c++ 命名空间的using声明相关推荐

  1. C++primer 第 3 章 字符串、向量和数组 3.1 命名空间的using声明 3.2标准库类型string

    引言 除了第2章介绍的内置类型之外,C++语言还定义了 -个内容丰富的抽象数据类型库.其中,string和 vector是两种最重耍的标准库类型,前者支持可变长字符串,后者则 表示可变长的集合.还有- ...

  2. C++ 语言命名空间 (namespace) 和 using 声明 (using declaration)

    C++ 语言命名空间 (namespace) 和 using 声明 (using declaration) 命名空间可作为附加信息来区分不同库中相同名称的函数.类.变量等.命名空间定义了上下文,就是定 ...

  3. C++命名空间 namespace的作用和使用解析

    一. 为什么需要命名空间(问题提出) 命名空间是ANSIC++引入的可以由用户命名的作用域,用来处理程序中 常见的同名冲突.    在 C语言中定义了3个层次的作用域,即文件(编译单元).函数和复合语 ...

  4. 为 Vue3 学点 TypeScript, 命名空间(namespace)是什么?

    往期目录 第一课, 体验typescript 第二课, 基础类型和入门高级类型 第三课, 泛型 第四课, 解读高级类型 第五课, 命名空间(namespace)是什么 什么时候要用命名空间? 如果你发 ...

  5. 【C++ 语言】命名空间 ( namespace | 命名空间定义 | 命名空间嵌套 | 域作用符 | 与 include 对比 )

    文章目录 命名空间简介 自定义命名空间 自定义嵌套命名空间 域作用符 命名空间 与 include 区别 命名空间定义与使用完整代码 命名空间简介 命名空间 ( namespace ) : 1.命名空 ...

  6. 未能找到类型或命名空间名称_命名空间详解

    命名空间与类型有些相似,在类型中可以声明诸多成员:字段,属性,方法而在命名空间中可以声明:类,接口命名空间属于逻辑组合,用来对类型的功能进行逻辑分组成员根据相关性可以将name, age, sex成员 ...

  7. 【小白学习C++ 教程】十三、C++命名空间namespace

    @Author:Runsen 文章目录 访问命名空间 嵌套命名空间 命名空间别名 任何C++程序都有声明namespace,比如下面的C++程序没有声明namespace int main() {in ...

  8. C++语言基础(1)-命名空间

    一个中大型软件往往由多名程序员共同开发,会使用大量的变量和函数,当有两个人都同时定义了一个名字相同的全局变量或函数的时候,若是把他们的代码整合在一块编译,此时编译器就会提示变量或函数重复定义,C++为 ...

  9. XML 命名空间以及它们如何影响 XPath 和 XSLT (Extreme XML)

    Dare Obasanjo Microsoft Corporation 2002 年 5 月 20 日 本文是有望长期发表的系列文章的第一篇,这些文章专门阐释由 Microsoft 支持的 W3C X ...

最新文章

  1. web前端工程师全套教程免费分享
  2. C语言从来都没有过时,你大爷终究是你大爷
  3. iOS开发 常见错误
  4. hibernate中的saveOrUpdate()报错
  5. 学校网站模板s1_中学学校网站源码_学校网站管理系统
  6. Java基础之多态的运用
  7. ubuntu结束进程快捷键_ubuntu快捷键详细版
  8. 樱(桜) - 堀江由衣 (日语-中文-罗马)
  9. 在线EXCEL编辑器-Luckysheet
  10. AT32F437VM SPI驱动AT7456E OSD芯片
  11. 巴比特 | 元宇宙每日必读:回顾数字藏品的2022,从高歌猛进到急速刹车,明年能否等到“风”来?...
  12. python列表两两相减_【数据分析入门】之:如何用Python代替Excel(1)
  13. 高级软件工程第九次作业:东理三剑客团队作业-随笔5
  14. U盘装完系统后多出来的EFI盘复原
  15. MongoDB分片(Sharding)技术
  16. 假设某专业有若干个班,每个班有若干学生,每个学生包含姓名和分数,这样构成一棵树,如图1所示。假设树中每个结点的name域均不相同,该树采用孩子兄弟链存储结构,其结点类型定义如下:
  17. 苹果笔记本屏幕亮度调节不了/太暗怎么办?
  18. 忻州计算机cad培训,忻州CAD三维建模培训cad三维制图教程
  19. Unity——通过点击鼠标进行场景切换
  20. 人人影视字幕组因盗版视频被查?看剧何去何从

热门文章

  1. Android软件开发之盘点所有Dialog对话框大合集(一)
  2. 系统美化 XP主题及其他
  3. C++总结篇(4)内存管理
  4. QT5 C++编写B类IP地址计算第一个可用IP地址、最后一个可用IP地址、网络号、广播地址、子网数、主机数
  5. android可以有一个悬浮窗口在进入屏保状态显示,点击进入应用,Android如何实现锁屏状态下弹窗...
  6. html5群组选择器,css选择器
  7. 机械臂中的四元素转为旋转矩阵_雅克比矩阵(上)雅克比推导
  8. 时光手帐如何打印 时光手帐打印的方法
  9. RTMP播放器开发填坑之道
  10. 通俗易懂告诉你CPU/GPU是什么?