C++命名空间与输入输出

你好,我是史丰源
欢迎你的来访,希望我的博客能给你带来一些帮助。

我的Gitee:代码仓库.☀️

我的联系方式:
QQ:1756786195
邮箱:Marksky126@outlook.com🌐

欢迎大家进入C++的学习💯

(前言) C++学习方法

  1. 多做总结
  2. 画思维导图
  3. 常看书(Effctive C++)
  4. 每天适量刷题

一、命名空间

1、命名空间的定义:

namespace即“命名空间”,也称“名称空间” 。

在C语言中我们在书写代码前都会包含一个C的标准函数库。
我们可以类比C语言中的标准库,来看看C++的标准函数库。

在C++的书中我们最常见的就是使用

using namespace std;

using就是使用,namespace就是命名空间的关键字,std是包含标准库函数或者对象的命名空间。
那眼尖的同学可能发现了 在C语言中,我们使用的是

#include<stdio.h>

C++里面也有IO,IO代表Input(输入流)和Output(输出流)。
一般在声明命名空间前,先声明输入输出流。
所以形式是这样的:

#include<iostream>
using namespace std;

和C语言的声明文件一样,我们也可以自己定义命名空间。

namespace HY
{
	//定义变量、函数
}

示例

1.普通的命名空间定义:

namespace HY
{
	int a ;
	int Add(int left,int right)
	{
		return left + right;
	}
}

2.嵌套定义命名空间

namespace HY
{
	int a;
	int b;
	int Add(int left,int right)
	{
		return left + right;
	}
	namesapce HY1
	{
		int c;
		int d;
		int Sub(int left ,int right)
		{
			return left - right;
		}
	}
}

3.同一个工程中允许多处存在相同的命名空间,编译器最后会合成到同一个命名空间中。

注意:在写公司项目时推荐不适用using namespace std,因为using指令导入整个命名空间中的所有成员的名称,包括那些可能根本用不到的名称,如果其中有名称与局部名称发生冲突,则编译器并不会发出任何警告信息,而只是用局部名去自动覆盖命名空间中的同名成员。但我们平时写项目练习时可以使用using。

那不用using namespace std我们用什么呢?

这里介绍

2.域限定符(“::”)

只需把常用的指令放进来即可

using std::cout;
using std::endl;

我们就可以在项目中使用 cout 和 endl了。
注意: 一个命名空间就相当于一个作用域,命名空间中的所有内容都局限于该命名空间内。

3.命名空间的使用

使用方式有三种:
第一种: 使用域限定符使用

#include<iostream>

namespace HY
{
	int a;
	int b;
	int Add(int left, int right)
	{
		return left + right;
	}
}
int main()
{
	HY::a = 10;
	printf("%d", HY::a);//暂且使用Printf,下文使用C++中的输出
	return 0;
}

第二种:利用using进行命名空间成员引入

#include<iostream>
namespace HY
{
	int a;
	int b;
	int Add(int left, int right)
	{
		return left + right;
	}
}
using HY::a;
int main()
{
	HY::a = 10;
	printf("%d", a);//暂且使用Printf,下文使用C++中的输出
	return 0;
}

第三种:利用using namespace 命名空间名称进行引入

#include<iostream>
namespace HY
{
	int a;
	int b;
	int Add(int left, int right)
	{
		return left + right;
	}
}
using namespace HY;
int main()
{
	HY::a = 10;
	printf("%d", a);//暂且使用Printf,下文使用C++中的输出
	return 0;
}

二、C++中的输入输出函数

还记得我们初学C语言的那一句

#include<stdio.h>

int main()
{
	printf("Hello World!");
	return 0;
}

如今步入C++的世界我们也需要去学C++的输入输出函数。
cin(输入函数)

cout(输出函数)
C++中把这两个函数更加形象化,因为是输入输出流。

输出:

	#include<iostream>
	
	using std::cin;
	using std::cout;
	using std::endl;
	
	int main()
	{
		cout << "Hello World!" << endl;//endl是C++中的换行符
		return 0;
	}

输入:

#include<iostream>
using std::cin;
using std::cout;
using std::endl;
int main()
{
	int a = 0;
	double b = 0.0;
	cin >> a >> b;//注意箭头方向,变量和变量间也要有箭头分割
	cout << a<< " " << b << endl;
	return 0;
}

C++的输入输出函数不像C语言中我们需要去限定格式,而是C++自动识别。
这里用到重载函数的知识,我们在下一节进行分享。

不走心的努力,都是在敷衍自己
与你共勉。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值