C++常识(1)

命名空间namespace

1.定义命名空间,其实就是定义了一个域,定义这个域呢需要用到namespace关键字,后面跟着命名空间的名字,然后接一对{},里面是命名空间的成员,可以是变量,函数,结构体等等。

2.namespace定义出的域和全局域各自独立,不同的域可以定义同名的变量,这样就解决了命名冲突。

3.C++中的域包括全局域,函数局部域,命名空间域,类域,域影响的是编译时语法查找一个变量/类型/函数的逻辑,域会对他们做出隔离。全局域和函数局部域还会影响他们的生命周期,命名空间域和类域不会影响他们的生命周期。

4.namespace只能定义在全局中,不能定义在别的域中

5.命名空间可以嵌套使用

6.项目工程中多文件定义的同名命名空间会被系统认为是同一个,不会冲突

7.C++标准库都放在命名空间std(standard)中

8.域作用限定符"::",使用方法(假设有一个域叫Apple,里面有一个变量叫a),假设我们就想找这个a,写法为

Apple::a

这样我们就可以直接访问a了。

命名空间的使用

1.编译查找一个变量的声明/定义时,只会默认在局部域或全局域查找,不会直接到命名空间中查找,除了使用域作用限定符进行空间访问,还有别的方法

2.使用using关键字把某个命名空间展开,这样下面再访问时就不需要再一个个通过::来访问了

比如using namespace std,我们平常做项目时习惯写在前面,其实就是提前展开了std这个域

3.使用using把命名空间中的某个成员展开,项目中经产访问且不容易冲突的量可以选择这个方式。

C++的输入和输出

1.首先我们需要包括头文件iostream(input output stream),这是标准的输入输出流库

2.std::cin用于输入,std::cout用于输出到council(工作台)

3.std::endl是一个函数,流输入输出时,相当于插入一个换行字符+刷新缓冲区,效果和C中的“\n”是一样的

4.<<是流插入运算符,>>是流提取运算符

5.使用C++输入输出比C更加方便,因为不再需要自己设定变量类型,C++的输入输出会自动识别类型。cin会把所有类型变为字符类型。其实最重要的是C++的流能更好的支持自定义类型对象的输入输出。

注意,我们日常练习可以直接展开std

using namespace std;

但在实际项目中不推荐

另外,C++兼容C语言,C语言的写法在C++中也可以使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值