第十一节,命名空间namespace
1,命名空间的定义
命名空间可以把不同的方法分散到不同的文件去实现,如果你会objective-C,他的作用和里面的类目有异曲同工之妙。当然了也有很多不同的地方,首先要明白的是,命名空间并不是一个类,你扩展他的方法并不是和类目一样在扩展一个类的方法。
如果你学过NET开发,获取你会对这个命名空间有更好的理解。
2,命名空间的写法
namespace test
{
int value;
void printfStr();
} void test::printfStr()
{
std::cout<<"teststes";
}
我的习惯是一般会直接在命名空间里面定义函数或者类的成员方法,然后再命名空间的外部去实现这些方法或者函数。这样会使命名空间看着更加的整洁。
namespace是定义命名空间的关键字 test是命名空间的名称。
3,命名空间的使用
int main(int argc, const char * argv[])
{ int value = 0;
using test::value;
}
如果命名空间是在别的文件中引用还需要在此文件中导入一句话
using namespace test;
这句话的作用,就是引用此命名空间。
当然了,细心的哥们可能会意识到上面的这段代码有一些错误,就是
int value = 0;
using test::value;
这两句会出现错误。
首先我们要明白,在命名空间中定义的变量具有全局性,如果你在该文件中使用了此命名空间,那么此文件中得变量名不能与此命名空间有冲突的地方,如果两个变量名称相同的话会出现报错的情况。
4,命名空间的别名
namespace TT = test;
TT::printfStr();
上述是为一个命名空间取别名的方法。
5,未命名空间
namespace
{
int value;
int value1;
}
未命名空间有一定的局限性,只能在本文件中使用。
每一个文件中只能有一个未命名空间
说了这么多,我感觉未命名空间有点和static类似.
第十一节,命名空间namespace的更多相关文章
- PHP命名空间namespace使用小结
1.介绍一下php的命名空间 什么是命名空间?从广义上来说,命名空间是一种封装事物的方法.在很多地方都可以见到这种抽象概念.例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命 ...
- XAML实例教程系列 - 命名空间(NameSpace) 三
XAML实例教程系列 - 命名空间(NameSpace) 2012-05-28 14:14 by jv9, 2205 阅读, 10 评论, 收藏, 编辑 上一篇曾提及XAML中,每个对象元素的声明是对 ...
- 使用kubectl管理Kubernetes(k8s)集群:常用命令,查看负载,命名空间namespace管理
目录 一.系统环境 二.前言 三.kubectl 3.1 kubectl语法 3.2 kubectl格式化输出 四.kubectl常用命令 五.查看kubernetes集群node节点和pod负载 5 ...
- PHP 命名空间(namespace)
PHP 命名空间(namespace) PHP 命名空间(namespace)是在PHP 5.3中加入的,如果你学过C#和Java,那命名空间就不算什么新事物. 不过在PHP当中还是有着相当重要的意义 ...
- Atitit 深入理解命名空间namespace java c# php js
Atitit 深入理解命名空间namespace java c# php js 1.1. Namespace还是package1 1.2. import同时解决了令人头疼的include1 1.3 ...
- PHP 使用命名空间(namespace),实现自动加载
示例: #/DB/MySql.class.php也就是DB文件夹下有MySql.class.php文件 namespace DB; class MySql { public function __co ...
- PHP命名空间(Namespace)的使用详解(转)
对于命名空间,官方文档已经说得很详细[查看],我在这里做了一下实践和总结. 命名空间一个最明确的目的就是解决重名问题,PHP中不允许两个函数或者类出现相同的名字,否则会产生一个致命的错误.这种情况下只 ...
- PHP命名空间(Namespace)的使用详解
对于命名空间,官方文档已经说得很详细[查看],我在这里做了一下实践和总结. 命名空间一个最明确的目的就是解决重名问题,PHP中不允许两个函数或者类出现相同的名字,否则会产生一个致命的错误.这种情况下只 ...
- include与__autoload与命名空间namespace与PSR4详解
1. include, require, include_once, require_once include和require是PHP中引入源文件最基本的用法,其他例如__autoload, name ...
随机推荐
- PCI DSS合规建设ASV扫描介绍
最近查一些Nessus.Nexpose漏洞扫描工具相关资料,工具介绍都会提到一些审计功能,其中最常见的就是PCI DSS合规性审计.从网上找到一篇介绍较详尽的文章,与大家分享. 原文摘自:http:/ ...
- 小程序获取openid unionid session_key
.wxml <button bindtap="paytap">授权</button> .js Page({ paytap: function () { va ...
- php 可以动态的new一个变量类名
<?PHPheader("content-type:text/html; charset=utf-8");//echo ucfirst('a b'); class Stude ...
- msgpack和protobuf的对比
msgpack和protobuf的对比 msgpack的序列化速度比protobuf要快一些,但反序列化要比protobuf要慢一些,但总体都接近msgpack可以直接序列化类对象,但protobuf ...
- mac 拷贝文件时报错 8060 解决方案
解决如下: 即某文件夹下出现多重子目录,级数很多,删除多余的子文件夹即可. 至于如何产生的,有人说是xcode升级导致,不过没有见证 .我的不属于这类情况的. (参见:http://macosx.co ...
- HTML常用标记
HTML文档由4个主要标记组成,这4个标记是<html>.<head>.<title>和<body>.举例如下: <html> <he ...
- Java操作Mongodb 保存/读取java对象到/从mongodb
从http://central.maven.org/maven2/org/mongodb/mongo-java-driver/选择一个版本进行下载,这里选择的是3.0.0版本,具体下载以下jar包: ...
- max-sum-of-sub-matrix-no-larger-than-k
根据上一篇文章提到的参考文档: https://leetcode.com/discuss/109749/accepted-c-codes-with-explanation-and-references ...
- asp.net中使用ueditor 1.3.6上传图片问题
在asp.net中使用ueditor 1.3.6版本上传图片时,出现上传成功但是,图片无法正常显示的问题,解决方法如下: 只需要将imageUp.ashx中的info = up.upFile(cont ...
- iphone手机微信端html5 Geolocation定位失效的问题
使用Geolocation方法存在错误信息error.POSITION_UNAVAILABLE 其实问题不局限于微信端而是iphone升级到ios10后,对获取地理位置信息作出了限制,只有https的 ...