当前位置: 首页 > wzjs >正文

乌鲁木齐市电话号码黄页手机流畅优化软件

乌鲁木齐市电话号码黄页,手机流畅优化软件,营销型和展示型网站,现在什么行业发展前景最好这篇文章我们来稍微多讲一点有关于C当中的命名空间的内容。在上一篇文章当中,我们举了个Apple和Orange命名空间内有相同的Print函数的情况。那么在我们现实当中,其实这种有相同命名的函数/变量的需求还是很多的,因为很多函数可能功能就是类似…

这篇文章我们来稍微多讲一点有关于C++当中的命名空间的内容。在上一篇文章当中,我们举了个Apple和Orange命名空间内有相同的Print函数的情况。那么在我们现实当中,其实这种有相同命名的函数/变量的需求还是很多的,因为很多函数可能功能就是类似的,命名的时候也就是类似的。但是如果有命名相同的函数定义放在一起,会发生链接错误,所以我们有了命名空间。

在C当中,是没有命名空间的,所以如果在C当中写一个库,需要用这个库的名字来作为前缀或者后缀,以此和其他库里面的函数区分开。我们之前使用过的glfw就是一个典型的例子。但是在C++当中,有了命名空间的帮助,我们就可以直接使用命名空间,而不用在变量/函数上面挂上一大堆前缀后缀,才能让明明不会发生冲突了。

命名空间的操作符就是::,这个我们在之前已经见了很多次了,这个符号的作用就是说明我们在使用这个命名空间内的变量。而之前我们讲类当中的静态方法时,也接触过这个符号。其实类一定程度上也可以看作是个命名空间,尤其是对于静态方法,那既然不会被实例化,是这个类独有的,那就可以采用和命名空间相似的使用方法。

我们前面讲到过,如果在一个文件内全使用某一个命名空间内的变量的话,可以使用

using namespace Apple;
using Apple::Print;

这两句当中哪句都可以,看使用的需求。当然我们也可以在命名空间里面嵌套命名空间:

namespace Apple {namespace functions {void Print(const std::string& str) {std::cout << str << std::endl;}}
}

可以看到我们套了两层,那么如果想要使用这个Print函数,我们可以用

 using Apple::functions::Print;

或者就直接用

using namespace Apple::functions;

但是如果我们用

using namespace Apple;

就会发现这是找不到Print的,因为内层命名空间内部对于外层的命名空间其实是不可见的。如果想要解决这个问题,就需要使用

namespace Apple {inline namespace functions {void Print(const std::string& str) {std::cout << str << std::endl;}}
}

通过inline修饰,这样内部就可见了。

以上就是这篇文章的全部内容了,希望大家能够喜欢!

http://www.dtcms.com/wzjs/263554.html

相关文章:

  • 长域名的优秀网站百度推广方案怎么写
  • 做网站后台应该谁来做网上兼职外宣推广怎么做
  • 湖北武汉疫情最新消息视频seo优化教程
  • 先有域名才可以做网站吗高端网站建设制作
  • 西安的网站设计与制作首页直销的八大课程
  • 做网站的调查问卷b站引流推广
  • 河北省招标投标信息网seo管理系统创作
  • 昆明网站营销搜索引擎推广的费用
  • 腾讯做网站上传seo免费视频教程
  • 厦门安能建设品牌网站建设网络推广的基本方法
  • 做网站 收费优帮云排名优化
  • 做的网站手机打不开怎么办平台如何做推广
  • 免费制作图片的软件有哪些seo优化网络推广
  • 网站建设实训考试青岛网站关键词排名优化
  • 上海平台网站建设公司排名网络推广服务合同
  • 网站推广主要怎么做互联网推广
  • 有哪些做兼职的设计网站有哪些工作seo视频教程百度云
  • 怎样用文档做网站首页千锋教育官方网
  • 制作网站公司首 荐乐云seo专家免费职业技能培训网站
  • 衡水阿里巴巴网站建设seo人员的职责
  • 义乌公司网站建设石家庄百度seo排名
  • 做网站协议书公司网站制作需要多少钱
  • 企业名录免费 emailseo网络推广方法
  • 宁波网站开发制作企业推广策划
  • 网站商城支付宝开通怎么做seo引擎优化
  • 网站单页别人是怎么做的如何提交百度收录
  • 厦门建设局怎么进天津seo技术教程
  • vultr 做网站深圳网站设计制作
  • 网站内部链接的作用有哪些seo是如何优化
  • 怎么做hello官方网站关键词排名提高方法