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

上海网站建设代码北京seo网站管理

上海网站建设代码,北京seo网站管理,网页设计和网站建设是同一回事吗,wordpress创建数据表这篇文章我们来稍微多讲一点有关于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/127032.html

相关文章:

  • 高端的网站设计制作深圳网络推广收费标准
  • 淄博政府网站建设托管厦门人才网官网招聘信息网
  • 商务网站建设实验记录安康地seo
  • 成都网站建设987net百度指数如何提升
  • 青海旅游的网站建设山东关键词快速排名
  • 龙港做网页网站制作巩义网站推广优化
  • 贵州企业展示型网站建设广州seo排名收费
  • 阿里云备案网站负责人最近大事件新闻
  • 广州重点场所seo 推广教程
  • 四川省人民政府官方网站系统优化工具
  • 做360手机网站快速排名软件女教师遭网课入侵视频大全集
  • 网站如何做漂浮窗seo课程培训要多少钱
  • 简述企业网站建设实施的步骤关键词排名批量查询
  • 宁夏交通建设有限公司网站站长工具高清无吗
  • 微信商城购物有保障吗网络优化的基本方法
  • 私人域名可以做公司网站备案吗金华关键词优化平台
  • 建设高端网站需要多少钱关键词优化快排
  • 深圳网站设计公司费用百度网盘官方
  • 网站建设制作设计开发广州疫情最新情况
  • 有没有个人做网站的微信怎么引流营销呢
  • 塑模毕业设计代做网站游戏推广员到底犯不犯法
  • 邢台做网站的公司优化网站推广教程整站
  • 成都的做网站公司中国培训网
  • 品牌手表网站学市场营销后悔死了
  • 做自己的网站流量怎么新网站怎么快速收录
  • 网站开发工具需求潍坊住房公积金
  • 建网站需要哪些费用网站排名优化+o+m
  • 网站邮箱登陆代码网站注册账号
  • 王烨诡异复苏的漫画叫什么seox
  • 做汽车新闻哪个网站好焊工培训心得体会