[C++系列] 2. C++关键字、命名空间、输入与输出

此篇主要学习三个知识点:

1. C++关键字(C++98)

2. C++中的命名空间

3. C++下的输入、输出


1. C++关键字(C++98)

       对于C++的关键字,我们不需要特别去“背诵”它,一是:任务量繁重易出错,二是:不能够理解“关键字”,关键在哪里了?这些在日后的学习中会慢慢进行涉及,潜移默化也就懂了。但还是和C语言一样,得记住一些特例,例如define,这个小坑!

2. C++中的命名空间

       当变量、函数、类非常多时,它们大多都存在于全局作用域中。而对它们的命名既要做到“见名知意”,又要避免命名冲突或名字污染,namespace关键字的出现就是针对这种问题的,其目的是对标识符的名称进行本地化。

2.1 命名空间的定义

       定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然后接一对{}即可,{}中即为命名空
间的成员。

namespace N1 {        // 1.N1为命名空间的名称
		//命名空间中既可以定义变量,也可以定义函数
	int a;
	int b;
	int Add(int a, int b) {
		return a + b;
	}
}

// 2.命名空间可以嵌套
// 嵌套调用的规则为从外到内依次调用
namespace N2 { 
	int a;
	int b;
	int Add(int a, int b) {
		return a + b;
	}
	namespace N3 {
		int c;
		int Add(int a, int c) {
			return a + c;
		}
	}
}

// 3.同一工程下可以允许多个命名空间名字相同
// 编译器最后将其合成到同一个命名空间内
namespace N1 {
	int m;
	int Add(int a, int m) {
		return a + m;
	}
}



       在工程中,我们定义好了多个命名空间时,还有很重要的一点:避免命名空间的展开,例如using namespace N1、using namespace N2,当有多个空间展开时,同名便会造成重定义!!!

2.2 命名空间的使用

命名空间的使用有三种方式:

1)加命名空间名称及作用于限定符

int main() {
	cout << N1::a << endl;
}

2)使用using将命名空间中成员引入

using N1::b;

int main()
{
	cout << N1::a << endl;
	cout << b << endl;
	return 0;
}

3)使用using namespace 命名空间名称引入

using namespce N1;

int main()
{
	cout << N1::a << endl;
	cout << b << endl;
	Add(10, 20);
	return 0;
}

       针对第3)种方式,在此我们不推荐使用,在平常的学习中所创建的变量、函数、类较少不怎么影响,但我们使用命名空间的作用便是为了防止重复命名出错,命名污染。命名空间展开便没有它的自身价值了。

3. C++下的输入、输出

#include <iostream>
using namespace std;

int main() {
	cout << "Hello world!!!" << endl;  // 相当于std::cout<<endl;
	return 0;
}

就3点进行说明:

1) 使用cout标准输出(控制台)cin标准输入(键盘)时,必须包含<iostream>头文件std标准命名空间(与编译器是否支持有关)。

2)采用C++进行输入输出更加方便,无需增加数据格式控制,如:整形--%d,字符--%c。

3)支持连续的输入输出,“>>”其有返回值,即返回一个cin、cout以便下次继续进行输入输出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ypuyu

如果帮助到你,可以请作者喝水~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值