问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C++命名空间,疑惑

发布网友 发布时间:2022-04-06 02:53

我来回答

4个回答

热心网友 时间:2022-04-06 04:22

cout 这个对象在iostream头文件中,如果没有#include<iostream>,很明显你是找不到cout这个对象的;加了头文件包含之后并不是cout就就直接可以用了,因为cout在头文件iostream中应该是 namespace std { typename *** cout ;}。所以你在main中只能直接使用std这个名字,如果要使用std内部的cout必须这样std::cout。但每次都这么写又很不方便,所以你可以在头文件包含之后再加上using namespace std;这样std内部的所有公开名字都被暴露了出来。就可以直接在main中使用cout这个对象了。有时候这样并不好,尤其是大项目中namespace很多的时候,都暴露出来,名字容易冲突,而namespace正是为了避免名字冲突才设计的。

热心网友 时间:2022-04-06 05:40

我也是初学者,说说我的看法。

头文件只是文件名,和命名空间是两码事。

命名空间是为了防止定义冲突,有点像java里的包


下面的代码示例说明了一下(随手写的没测试过,只是为了说明一下下)

namespace my{
    namespcae ns{
        void sayHello(){
            //....
        }
    }
}

namespace your{
    namespcae ns{
        void sayHello(){
            //另一件事
        }
    }
}

...
int main(){
    my::ns::sayHello();
    your::ns::sayHello();
}

如果不用空间的话,这两个sayHello函数就冲突了啊

我也是c/c++新手,如果不对请指教

热心网友 时间:2022-04-06 07:15

名空间,你可以理解为一个作用域
namingspace{...}
在这个作用域里面定义了一坨东东,该作用域外是无效的,就跟一个函数里的局部变量是一个道理。你要用名空间里面的方法或者变量是,自然要包含这个名空间,或者用名空间::方法的形式也行。

热心网友 时间:2022-04-06 09:06

是不是没有写

using namespace std;
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
在公交车上实施扒窃,会受到怎样的处罚? 交通违法行为识别 公交车扒窃会如何处罚? 郑州鱼缸清洗找哪家公司做得比较好? 郑州有没有专业维修鱼缸,清洗鱼缸的? ...的鱼缸,放在办公室养些鱼水草之类的。郑州哪里有卖这样的鱼缸。_百... 我们公司想要定做个观赏鱼缸,不知道郑州哪家公司最专业? 谁知道郑州生态鱼缸定做哪家做的效果最好? 联想电脑启用无线功能的功能键? 笔记本电脑怎么连接网笔记本电脑怎样连接无线网 请问xhtml中开头的命名空间是怎样理解的,为什么每次写的都是同样一个名字? C++标准命名空间 什么是.NET Framework的命名空间?命名空间为什么要分层次? c#中的命名空间用和不用有什么区别 嵌套命名空间它的含义是什么,怎么去理解?? C#中&quot;命名空间&quot;的意思和功能? As3 达人请进来,我刚学到命名空间,对概念不是很理解,我送点分数给你们,嘿嘿,先到先得 Python之禅中的namespace怎么理解 模块与命名空间 C++命名空间是什么? 学校学了一个月C语言,然后开始学c#,感觉对c#的命名空间和类表示不能理解,有通俗一点的解释吗 C++命名空间到底有什么作用?请举例说明 c#中什么叫做命名空间? 1】 命名空间里可以包容 命名空间? 2】 类一定在 命名空间里面; 3】 命名空间里面 可以 声明变量? C#里的命名空间是什么意思? 如何理解命名空间?使用命名空间有什么好处? 什么是命名空间 企业网站都需要做什么? 企业网站有哪些要求? 建一个企业网站需要做些什么? tinkphp5.1手册命名规范中类的文件名均以命名空间定义怎么理解? thinkphp中使用redis thinkphp中的redis怎么用啊 thinkphp+redis-TP框架里怎么扩展redis操作 thinkphp 怎么开启redis拓展 thinkphp redis 怎么选择数据库 thinkphp怎么使用redius Thinkphp5怎么扩展Redis数据库,实现Redis的CURD操作 ThinkPHP 框架,redis不能用,extension_loaded(&#39;redis&#39;) 返回false thinkphp redis存入session怎么调用 thinkphp 用redis 怎么选择数据库? 如何在thinkphp3.2.3里面设置redis thinkphp怎么配置redis密码 thinkphp6 index.php多应用时为什么自定义的入口无法访问多应用? 关于thinkphp开发的几种规范 Laravel 数据库id设置是自增可save新增sql出来的id为什么是字符串 laravel差入数据库主键自增怎么写 laravel怎么increment多个字段 laravel 怎么获取要修改的信息 使用laravel 的多对多的多态关联父表主键必须是叫做&#39;id&#39;吗