首页 > 其他分享 >弄清using namespace std的作用

弄清using namespace std的作用

时间:2023-11-24 21:44:17浏览次数:34  
标签:std namespace 使用 using include 标识符

⭐C++标准为了和C区别开!为了正确地使用命名空间,规定头文件不使用后缀.h。

例如当我们使用<iostream.h>时,相当于在C中调用库函数。

使用using namespace std
例如

1 #include
2 #include
3 #include
4 using namespace std;

这样使用的话,就相当于std命名空间内所有的标识符都已声明且存在,就像他们被声明全局变量一样,我们可以直接使用!

不使用using namespace std
cout和endl实际上是C++中的标识符,使用using namespace std;时,可以直接使用cout等标识符。
但是当不使用using namespace std的时候,直接使用cout编译器会不识别,会产生报错:要加上命名空间std::才可以使用!
当程序中使用的标识符过多的话,每一句加std::就显得过于繁琐,所以一般都会在头文件后面加上using namespace std。

标签:std,namespace,使用,using,include,标识符
From: https://www.cnblogs.com/sqy1998/p/17854827.html

相关文章

  • C++11 多线程(std::thread)实例
    C++11的std::thread在C中已经有一个叫做pthread的东西来进行多线程编程,但是并不好用(如果你认为句柄、回调式编程很实用,那请当我没说),所以c++11标准库中出现了一个叫作std::thread的东西。std::thread常用成员函数构造&析构函数举个栗子例一:thread的基本使用1//Compiler:......
  • docker namespace初解
    引用:https://www.bilibili.com/video/BV1qF411e77r/?spm_id_from=333.788&vd_source=e05f4a55dd5d8e27f74472aa7fd97ace1.Linuxnamespace机制: 2.dockernetwork机制:3.dockeroverlaynetwork: ......
  • std::thread方法join与detach
    1、std::joinstd::join是std::thread类的成员函数之一,用于等待线程的执行完成。#include<iostream>#include<utility>#include<thread>#include<chrono>#include<atomic>voidprocess(std::stringstr_info){for(inti=0;i<500;++i)......
  • std::function 与 std::bind解决类成员函数作为回调函数的问题
    1、std::functionstd::function是一个模板类,其可对C++可调用的对象进行封装,比如,成员函数、静态函数等;它的基本作用是简化调用的复杂程度,归一化调用方式。std::function<int(int,int)>int_function:声明方式为<返回值类型(参数类型1,参数类型2,...)>,其可封装任何可调用的......
  • C++ lambda 内 std::move 失效问题的思考
    最近在学习C++Move时,有看到这样一个代码需求:在lambda中,将一个捕获参数move给另外一个变量。看似一个很简单常规的操作,然而这个move动作却没有生效。具体代码如下std::vector<int>vec={1,2,3};autofunc=[=](){autovec2=std::move(vec);std::cout......
  • 记录 Linux zstd测试程序
    系统版本[root@localhost~]#cat/etc/redhat-releaseCentOSLinuxrelease7.9.2009(Core)1.linux命令行环境下如何从github上获取源代码直接gitclone项目的github地址(http开头),如gitclone https://github.com/facebook/zstd.git 2.Linux安装cmake3.......
  • 2023-11-22 Invariant Violation: [app.model] namespace should be unique ==》模块
     如上图,报错原因:存在多个名为demoDataSource的模块名称导致报错解决方案:修改模块名称即可,把demoDataSource改为demoDataSource2就不会报错了扩展:该问题是由rudex引起的,redex要求数据模型(models)命名(namespace)必须不同,否则在注入该数据模型时就会报错......
  • ISOM 3029 - Computer Programming Using C++
    以下是C++程序的问题。作业的硬拷贝和软拷贝都应按时提交。全部的程序(.cpp文件)将被压缩并上传到“提交作业1”按钮。压缩文件应与您的学生一起命名编号,例如“ba12345_Ass1.zip”。问题1:彩票计划(50%)编写一个C++程序,在开始时输出一条问候信息,然后生成6个肯定信息对于彩票游......
  • [949] Using re to extract unstructured tables of PDF files
    Hereistheproblem,thisunstructuredtableofaPDFfilecannotbeextrctedasatabledirectly.Wecanonlyextractthewholetextsofeverypage.MytaskistoextractthePlaceID,PlaceName,andTitleDetails.ThenonlyTitleDetailsincludepatte......
  • mysql无法登陆,报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (
    问题描述在使用命令行登录MySQL时出现了下述问题: 出错原因usingpassword:NO:表示输入没有输入密码就尝试登陆了usingpassword:YES:表示输入了密码,但密码错误 解决方案:修改密码1.修改mysql配置文件my.cnf。在 [mysqld]增加skip-grant-tables 无密码进入mys......