关于C++命名空间的一个问题

#include
using namespace std;

namespace my_space {
int size;
void print();
}
using namespace my_space;
void my_space::print() {
cout << "调用成功" << endl;
}

/*位置1*/

int main()
{
print();
return 0;
}
以上代码是在一个网课中看到的,为什么在使用了using指示后对print()的定义还要加my_space作用域名?如果去掉了my_space::系统会报错

            另外,如果我在此代码的基础上在位置1加上my_space::size=1;也会报错

error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
error C2086: “int my_space::size”: 重定义

请问这是什么原因呢?

1个回答

因为main没有写在my_space下,它和print不在一个命名空间,所以认不到。
如果你using了以后又定义,那么就重复定义了,也就是error C2086: “int my_space::size”: 重定义

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
关于C++命名空间的一个问题
#include<iostream> using namespace std; namespace my_space { int size; void print(); } using namespace my_space; void my_space::print() { cout << "调用成功" << endl; } /*位置1*/ int main() { print(); return 0; } 以上代码是在一个网课中看到的,为什么在使用了using指示后对print()的定义还要加my_space作用域名?如果去掉了my_space::系统会报错 另外,如果我在此代码的基础上在位置1加上my_space::size=1;也会报错 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int error C2086: “int my_space::size”: 重定义 请问这是什么原因呢?
c#命名空间的问题不大懂
想问大神们一个关于命名空间的问题 using system.net; using system.net.socket; 这两个有什么联系呢? 第二个是不是包含在第一个里面,为啥引用了第一个还要在用第二个。谢谢
关于spring xml配置中的c命名空间和p命名空间的问题
![图片说明](https://img-ask.csdn.net/upload/201512/06/1449388554_358334.png) <?xml version="1.0" encoding="UTF-8"?> <!-- 指定spring配置文件的根元素和Schema并导入p:命名空间的元素 --> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:c="http://www.springframework.org/schema/c" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="chinese" class="com.app.service.impl.Chinese" c:age="29" c:axe-ref="stoneAxe"/> <bean id="stoneAxe" class="com.app.service.impl.StoneAxe"/> <bean id="steelAxe" class="com.app.service.impl.SteelAxe"/> </beans> package com.app.service; public interface Person { public void useAxe(); } package com.app.service; public interface Axe { public String chop(); } package com.app.service.impl; import com.app.service.Axe; public class StoneAxe implements Axe { public String chop() { return "石斧头砍柴好慢"; } } package com.app.service.impl; import com.app.service.Axe; public class SteelAxe implements Axe{ public String chop() { return "钢斧头真快"; } } package com.app.service.impl; import com.app.service.Axe; import com.app.service.Person; public class Chinese implements Person { private Axe axe; private int age; public Chinese(Axe axe,int age){ this.axe = axe; this.age = age; } public void useAxe() { System.out.println(axe.chop()); System.out.println("age成员变量的值:" + age); } } package com.app.test; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import com.app.service.Person; public class SpringTest { public static void main(String[] args) { ApplicationContext ctx = new AnnotationConfigApplicationContext("beans.xml"); Person p = ctx.getBean("chinese",Person.class); p.useAxe(); } } 运行测试类报错如下: log4j:WARN No appenders could be found for logger (org.springframework.core.env.StandardEnvironment). log4j:WARN Please initialize the log4j system properly. Exception in thread "main" org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'chinese' is defined at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:641) at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1157) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:280) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:198) at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:979) at com.app.test.SpringTest.main(SpringTest.java:11)
每次导入一个命名空间,空间内的变量便会初始化一次嘛?
如题,当有多个文件引入同一个命名空间时,命名空间内定义的变量会在每一次引入时都初始化嘛 问题由来: 我在调试程序的时候发现,本应该只初始化一次的变量初始化了两次。。 调试表现为输出两句初始化 ![图片说明](https://img-ask.csdn.net/upload/202002/14/1581665931_915213.png) 这有悖我的程序意愿 程序文件列表 类文件 |--RRCSer.h |--RRCSer.cpp 主程序文件: |--main.cpp 程序的打印功能是使用一个我自定义的类CLogger来实现的,我将它定义于命名空间中 static CLogger s_logger;//全局静态日志器 问题: 我想要实现每次只有一个线程在打印消息,其他线程等待上一线程打印完毕再继续打印,我选择用互斥对象(定义为CLogger的成员变量)来实现这个功能。可调试过程中发现本应该只初始化一次的互斥对象,初始化了两次,实际调试窗口中,两个互斥对象的地址也不一样,导致主线程与子线程输出冲突(我暂时使用主线程先休眠一段时间的方法解决了这个问题) 问题输出: ![图片说明](https://img-ask.csdn.net/upload/202002/14/1581666481_781933.png) 进一步的调试,发现s_logger 对象被创建了两次,也就是说主线程与子线程用的两个互斥对象。。。导致两线程共同输出消息时的冲突。我的s_logger定义于RRCSer.h头文件里的命名空间中,并且这个命名空间被main.cpp和RRCSer.cpp引入,从而得出以上问题,再问问有什么推荐的方法可以解决这个问题 大致的代码如下(只提供出现问题的代码): RRCSer.h: ``` namespace Ser { class CLogger { public: CLogger(); ~CTestCLogger(); private: HANDLE m_mutex }; static CLogger s_logger; } ``` RRCSer.cpp ``` #include <RRCSer.h> using namespace Ser; CLogger::CLogger() { } CLogger::~CLogger() { } ``` main.cpp ``` #include "RRCSer.cpp" using namespace Ser; int main() { return 0; } ```
C#菜鸟求教关于命名空间的问题
错误 未能找到类型或命名空间名称“MainForm”(是否缺少 using 指令或程序集引用?) 程序部分截图: ![图片说明](https://img-ask.csdn.net/upload/201501/04/1420344254_803453.png) 请大神帮忙解决一下,万分感谢!
请问在如何在一个类中调用不同C#脚本中同一命名空间下另一个类中的对象
C#萌新一枚 刚接触不久 问题如题 如何在一个类中调用不同C#脚本中同一命名空间下另一个类中的对象 谢谢各位~
关于C#命名空间的问题
![![图片说明](https://img-ask.csdn.net/upload/201811/21/1542786627_395097.png)图片说明](https://img-ask.csdn.net/upload/201811/21/1542786621_783306.png) 怎么回事
c#引用项目后无法using命名空间
在主项目的.csproj也找不到被引用的标签项 ps:被引用项目的命名空间更改为了主项目的命名空间名
C++ using namespace std; 表示使用那些命名空间呀?是一种怎么样的形式?
比如说#include<file.h>是包含一个文件,文件有趣连接一个源文件,当时命名空间是一个什么呢? 是一个库吗?是一个文件吗? 命名空间是定义的什么地方的? 或者说是一个什么东西
c++调用c#的dll,using 命名空间报错的问题
代码:![图片说明](https://img-ask.csdn.net/upload/201808/15/1534348055_663887.png) 其中的Invoke 是引用的dll,c#写的![图片说明](https://img-ask.csdn.net/upload/201808/15/1534348126_143625.png) 报错名称必须是命名空间名 请问下是为什么??怎么解决!
C# 不同命名空间的控件操作
MainForm是一个主窗口,有一个ListBox控件,再另一个命名空间Plugin中需要操作MainForm中的ListBox.Items.Add()。 求助。
C++调用C#的DLL文件,无法引入命名空间
![图片说明](https://img-ask.csdn.net/upload/201804/16/1523865896_560969.png)我C#里命名空间就是SysRunSet,但是在这里却调用不了这个命名空间,求助大佬
C#中不同程序集存在相同的命名空间
我实际问题是:1.程序集 System下命名空间namespace System.ComponentModel.Design与 2.程序集 System.Design下命名空间namespace System.ComponentModel.Design 同名使我不能引用到2命名空间中的类 我看了一篇文章https://my.oschina.net/robortly/blog/602079,照着做了也不行 看了MSDN《外部别名(C# 参考)》对若要引用两个具有相同完全限定类型名的程序集,必须在命令提示符下指定别名,如下所示: /r:GridV1=grid.dll /r:GridV2=grid20.dll 也不懂
C#反编译的的WPF开发遇到的问题,关于命名空间不存在
初学者,反编译得到的C#程序,XAML也是从BAML得到的,直接用BAML可以编译是可以的,图中报错的命令空间,是一个UserContorl 截图内容有限,如有需求可提供较为完整的源码。![图片说明](https://img-ask.csdn.net/upload/201601/28/1453972867_17938.png)
C# using Windows.Devices.WiFi 错误 CS0234 命名空间“Windows”中不存在类型或命名空间名“Devices”(是否缺少程序集引用?)
C# using Windows.Devices.WiFi 错误 CS0234 命名空间“Windows”中不存在类型或命名空间名“Devices”(是否缺少程序集引用?) 环境是WIN7上的VS2017,程序集里面没有Windows.Devices.WiFi,求解决方法
关于Objective-C命名冲突的解决办法
Objective-C没有命名空间,对于经常出现的命名冲突,该怎么解决?如果是第三方库命名冲突呢?
关于C#中using本身访问另一个名称空间中的名称的问题
在C# 入门经典第七版中,有这么一段话: using语句本身不能访问另一个命名空间中的名称。除非命名空间中的代码以某种方式链接到项目上,或者代码是在该项目的源文件中定义的,或在链接到该项目的其他代码中定义的,否则就不能访问其中包含的名称。 能举个 using语句本身访问另一个命名空间中的名称 例子吗? using语句本身访问另一个命名空间中的名称有啥用处呢?
C# webservice服务中如何返回soapenv命名空间?
我用C#写了一个webservice,客户端是用java写的,我收到客户端的请求后,响应报文 中是soap命名空间的,但客户端要求返回命名空间为soapenv,请问C# webservice该如 何实现?
使用c#生成有2个命名空间的xml
<root xmlns:a="……"> <a:other/> <row xmlns="……"> <rowIndex/> </row> </root> 请问下,现在xml中有2个命名空间,现在我想让row中的节点使用其父节点默认的命名空间,而不是root的a,请问该如何声明啊?我现在序列化出来的xml,其中rowIndex会前面加a 使用的是C#,声明 [XmlElement("HCHX_DATA")] public HCHX_DATA HCHX_DATA { get; set; }
类的友元函数是命名空间的成员吗?
在一个名称空间里面声明了一个类,在名称空间外定义,在这个类里面声明了一个友元函数,那么这个友元函数是不是原来名称空间的成员? 因为我实现这个友元的时候没有加命名空间限定,它自己认为自己是名称空间里的成员。 另外(与上无关),类的友元函数是不用事先声明的吧,现在类写到这了,需要友元,我就声明个友元,然后在类后面实现它就好了,是这样吗?或者我也可以事先声明,在类前声明,在类里加friend,类后再实现也是可以的是吗?
在中国程序员是青春饭吗?
今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...
《MySQL 性能优化》之理解 MySQL 体系结构
本文介绍 MySQL 的体系结构,包括物理结构、逻辑结构以及插件式存储引擎。
程序员请照顾好自己,周末病魔差点一套带走我。
程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。
Python+OpenCV实时图像处理
目录 1、导入库文件 2、设计GUI 3、调用摄像头 4、实时图像处理 4.1、阈值二值化 4.2、边缘检测 4.3、轮廓检测 4.4、高斯滤波 4.5、色彩转换 4.6、调节对比度 5、退出系统 初学OpenCV图像处理的小伙伴肯定对什么高斯函数、滤波处理、阈值二值化等特性非常头疼,这里给各位分享一个小项目,可通过摄像头实时动态查看各类图像处理的特点,也可对各位调参、测试...
2020年一线城市程序员工资大调查
人才需求 一线城市共发布岗位38115个,招聘120827人。 其中 beijing 22805 guangzhou 25081 shanghai 39614 shenzhen 33327 工资分布 2020年中国一线城市程序员的平均工资为16285元,工资中位数为14583元,其中95%的人的工资位于5000到20000元之间。 和往年数据比较: yea...
为什么猝死的都是程序员,基本上不见产品经理猝死呢?
相信大家时不时听到程序员猝死的消息,但是基本上听不到产品经理猝死的消息,这是为什么呢? 我们先百度搜一下:程序员猝死,出现将近700多万条搜索结果: 搜索一下:产品经理猝死,只有400万条的搜索结果,从搜索结果数量上来看,程序员猝死的搜索结果就比产品经理猝死的搜索结果高了一倍,而且从下图可以看到,首页里面的五条搜索结果,其实只有两条才是符合条件。 所以程序员猝死的概率真的比产品经理大,并不是错...
害怕面试被问HashMap?这一篇就搞定了!
声明:本文以jdk1.8为主! 搞定HashMap 作为一个Java从业者,面试的时候肯定会被问到过HashMap,因为对于HashMap来说,可以说是Java集合中的精髓了,如果你觉得自己对它掌握的还不够好,我想今天这篇文章会非常适合你,至少,看了今天这篇文章,以后不怕面试被问HashMap了 其实在我学习HashMap的过程中,我个人觉得HashMap还是挺复杂的,如果真的想把它搞得明明白...
毕业5年,我问遍了身边的大佬,总结了他们的学习方法
我问了身边10个大佬,总结了他们的学习方法,原来成功都是有迹可循的。
python爬取百部电影数据,我分析出了一个残酷的真相
2019年就这么匆匆过去了,就在前几天国家电影局发布了2019年中国电影市场数据,数据显示去年总票房为642.66亿元,同比增长5.4%;国产电影总票房411.75亿元,同比增长8.65%,市场占比 64.07%;城市院线观影人次17.27亿,同比增长0.64%。 看上去似乎是一片大好对不对?不过作为一名严谨求实的数据分析师,我从官方数据中看出了一点端倪:国产票房增幅都已经高达8.65%了,为什...
推荐10个堪称神器的学习网站
每天都会收到很多读者的私信,问我:“二哥,有什么推荐的学习网站吗?最近很浮躁,手头的一些网站都看烦了,想看看二哥这里有什么新鲜货。” 今天一早做了个恶梦,梦到被老板辞退了。虽然说在我们公司,只有我辞退老板的份,没有老板辞退我这一说,但是还是被吓得 4 点多都起来了。(主要是因为我掌握着公司所有的核心源码,哈哈哈) 既然 4 点多起来,就得好好利用起来。于是我就挑选了 10 个堪称神器的学习网站,推...
这些软件太强了,Windows必装!尤其程序员!
Windows可谓是大多数人的生产力工具,集娱乐办公于一体,虽然在程序员这个群体中都说苹果是信仰,但是大部分不都是从Windows过来的,而且现在依然有很多的程序员用Windows。 所以,今天我就把我私藏的Windows必装的软件分享给大家,如果有一个你没有用过甚至没有听过,那你就赚了????,这可都是提升你幸福感的高效率生产力工具哦! 走起!???? NO、1 ScreenToGif 屏幕,摄像头和白板...
阿里面试,面试官没想到一个ArrayList,我都能跟他扯半小时
我是真的没想到,面试官会这样问我ArrayList。
曾经优秀的人,怎么就突然不优秀了。
职场上有很多辛酸事,很多合伙人出局的故事,很多技术骨干被裁员的故事。说来模板都类似,曾经是名校毕业,曾经是优秀员工,曾经被领导表扬,曾经业绩突出,然而突然有一天,因为种种原因,被裁员了,...
C语言荣获2019年度最佳编程语言
关注、星标公众号,不错过精彩内容作者:黄工公众号:strongerHuang近日,TIOBE官方发布了2020年1月编程语言排行榜单。我在前面给过一篇文章《2019年11月C语言接近Ja...
大学四年因为知道了这32个网站,我成了别人眼中的大神!
依稀记得,毕业那天,我们导员发给我毕业证的时候对我说“你可是咱们系的风云人物啊”,哎呀,别提当时多开心啦????,嗯,我们导员是所有导员中最帅的一个,真的???? 不过,导员说的是实话,很多人都叫我大神的,为啥,因为我知道这32个网站啊,你说强不强????,这次是绝对的干货,看好啦,走起来! PS:每个网站都是学计算机混互联网必须知道的,真的牛杯,我就不过多介绍了,大家自行探索,觉得没用的,尽管留言吐槽吧???? 社...
良心推荐,我珍藏的一些Chrome插件
上次搬家的时候,发了一个朋友圈,附带的照片中不小心暴露了自己的 Chrome 浏览器插件之多,于是就有小伙伴评论说分享一下我觉得还不错的浏览器插件。 我下面就把我日常工作和学习中经常用到的一些 Chrome 浏览器插件分享给大家,随便一个都能提高你的“生活品质”和工作效率。 Markdown Here Markdown Here 可以让你更愉快的写邮件,由于支持 Markdown 直接转电子邮...
看完这篇HTTP,跟面试官扯皮就没问题了
我是一名程序员,我的主要编程语言是 Java,我更是一名 Web 开发人员,所以我必须要了解 HTTP,所以本篇文章就来带你从 HTTP 入门到进阶,看完让你有一种恍然大悟、醍醐灌顶的感觉。 最初在有网络之前,我们的电脑都是单机的,单机系统是孤立的,我还记得 05 年前那会儿家里有个电脑,想打电脑游戏还得两个人在一个电脑上玩儿,及其不方便。我就想为什么家里人不让上网,我的同学 xxx 家里有网,每...
史上最全的IDEA快捷键总结
现在Idea成了主流开发工具,这篇博客对其使用的快捷键做了总结,希望对大家的开发工作有所帮助。
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
谁是华为扫地僧?
是的,华为也有扫地僧!2020年2月11-12日,“养在深闺人不知”的华为2012实验室扫地僧们,将在华为开发者大会2020(Cloud)上,和大家见面。到时,你可以和扫地僧们,吃一个洋...
AI 没让人类失业,搞 AI 的人先失业了
最近和几个 AI 领域的大佬闲聊 根据他们讲的消息和段子 改编出下面这个故事 如有雷同 都是巧合 1. 老王创业失败,被限制高消费 “这里写我跑路的消息实在太夸张了。” 王葱葱哼笑一下,把消息分享给群里。 阿杰也看了消息,笑了笑。在座几位也都笑了。 王葱葱是个有名的人物,21岁那年以全额奖学金进入 KMU 攻读人工智能博士,累计发表论文 40 余篇,个人技术博客更是成为深度学习领域内风向标。 ...
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆每天早上8:30推送 作者|Mr.K 编辑| Emma 来源|技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯...
一份王者荣耀的英雄数据报告
咪哥杂谈本篇阅读时间约为 6 分钟。1前言前一阵写了关于王者的一些系列文章,从数据的获取到数据清洗,数据落地,都是为了本篇的铺垫。今天来实现一下,看看不同维度得到的结论。2环境准备本次实...
作为一名大学生,如何在B站上快乐的学习?
B站是个宝,谁用谁知道???? 作为一名大学生,你必须掌握的一项能力就是自学能力,很多看起来很牛X的人,你可以了解下,人家私底下一定是花大量的时间自学的,你可能会说,我也想学习啊,可是嘞,该学习啥嘞,不怕告诉你,互联网时代,最不缺的就是学习资源,最宝贵的是啥? 你可能会说是时间,不,不是时间,而是你的注意力,懂了吧! 那么,你说学习资源多,我咋不知道,那今天我就告诉你一个你必须知道的学习的地方,人称...
那些年,我们信了课本里的那些鬼话
教材永远都是有错误的,从小学到大学,我们不断的学习了很多错误知识。 斑羚飞渡 在我们学习的很多小学课文里,有很多是错误文章,或者说是假课文。像《斑羚飞渡》: 随着镰刀头羊的那声吼叫,整个斑羚群迅速分成两拨,老年斑羚为一拨,年轻斑羚为一拨。 就在这时,我看见,从那拨老斑羚里走出一只公斑羚来。公斑羚朝那拨年轻斑羚示意性地咩了一声,一只半大的斑羚应声走了出来。一老一少走到伤心崖,后退了几步,突...
一个程序在计算机中是如何运行的?超级干货!!!
强烈声明:本文很干,请自备茶水!???? 开门见山,咱不说废话! 你有没有想过,你写的程序,是如何在计算机中运行的吗?比如我们搞Java的,肯定写过这段代码 public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } ...
【蘑菇街技术部年会】程序员与女神共舞,鼻血再次没止住。(文末内推)
蘑菇街技术部的年会,别开生面,一样全是美女。
那个在阿里养猪的工程师,5年了……
简介: 在阿里,走过1825天,没有趴下,依旧斗志满满,被称为“五年陈”。他们会被授予一枚戒指,过程就叫做“授戒仪式”。今天,咱们听听阿里的那些“五年陈”们的故事。 下一个五年,猪圈见! 我就是那个在养猪场里敲代码的工程师,一年多前我和20位工程师去了四川的猪场,出发前总架构师慷慨激昂的说:同学们,中国的养猪产业将因为我们而改变。但到了猪场,发现根本不是那么回事:要个WIFI,没有;...
为什么程序猿都不愿意去外包?
分享外包的组织架构,盈利模式,亲身经历,以及根据一些外包朋友的反馈,写了这篇文章 ,希望对正在找工作的老铁有所帮助
Java校招入职华为,半年后我跑路了
何来 我,一个双非本科弟弟,有幸在 19 届的秋招中得到前东家华为(以下简称 hw)的赏识,当时秋招签订就业协议,说是入了某 java bg,之后一系列组织架构调整原因等等让人无法理解的神操作,最终毕业前夕,被通知调往其他 bg 做嵌入式开发(纯 C 语言)。 由于已至于校招末尾,之前拿到的其他 offer 又无法再收回,一时感到无力回天,只得默默接受。 毕业后,直接入职开始了嵌入式苦旅,由于从未...
立即提问