前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C++入门知识(一)

C++入门知识(一)

作者头像
海盗船长
发布2020-08-27 17:18:35
3520
发布2020-08-27 17:18:35
举报
文章被收录于专栏:基础知识文章基础知识文章

一、#命名空间 在C/C++中,变量、函数和类都是大量存在的,这些变量、函数和类的名称将都存在于全局作用域中,可能会导致很多冲突。使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突或名字污染namespace关键字的出现就是针对这种问题的。 1.命名空间的定义 定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然后接一对{}即可,{}中即为命名空间的成员。

代码语言:javascript
复制
//1.普通命名空间
namespace N1//N1为命名空间的名称
{
	// 命名空间中的内容,既可以定义变量,也可以定义函数
	int a = 10;
	int Add(int left, int right)
	{
		return left + right;
	}
	namespace N2			//2.命名空间中还可以再命名
	{
		int c = 10;
		int max(int x, int y)
		{
			if (x > y)
			{
				return x;
			}
			else
				return y;
		}
	}
}
			//3. 同一个工程中允许存在多个相同名称的命名空间
			//   编译器最后会合成同一个命名空间中。
namespace N1
{
	int max(int x, int y)
	{
		if (x > y)
		{
			return x;
		}
		else
			return y;
	}
}

一个命名空间定义了一个新的作用域,命名空间中的所有内容都局限于该命名空间中 2.命名空间的使用

代码语言:javascript
复制
①命名空间名称::变量
int main()
{
	printf("%d", N1::a);
    system("pause");
	return 0;
}
②using namespace 命名空间名称
//using namespace N1;
③using  命名空间名称::变量
using N1::a;
int main()
{
	printf("%d", a);
	system("pause");
	return 0;
}

二、C++输入&&输出 说明: 1. 使用cout标准输出(控制台)和cin标准输入(键盘)时,必须包含< iostream >头文件以及std标准命名空间。 2. 使用C++输入输出更方便,不需增加数据格式控制

代码语言:javascript
复制
#include<iostream>
using namespace std;
namespace N1
{
	int a =10;
}
using namespace N1;
int main()
{
	int b=0;
	cin>>b>>endl;
	cout<<a<<endl;
	cout<<b<<endl;
	return 0;
}

输出结果:

在这里插入图片描述
在这里插入图片描述

三、缺省参数 1.什么是缺省参数? 在声明函数的某个参数的时候为之指定一个默认值,在调用该函数的时候如果采用该默认值,你就无须指定该参数。 2.缺省参数使用规则 ①带缺省值的参数必须放在参数表的最后面。 ②缺省值必须是常量。 ③缺省参数必须通过值参或常参传递。 例:

代码语言:javascript
复制
#include<iostream>
using namespace std;
int sum(int a = 1, int b = 1, int c = 1)
{
	return (a + b + c);
}
int main()
{
	cout << sum() << endl;
	cout<<sum(10)<<endl;
	cout<<sum(10, 8)<<endl;
	cout << sum(10, 8, 6) << endl;
	system("pause");
	return 0;
}

输出结果为:

在这里插入图片描述
在这里插入图片描述

当不传入实参是就用缺省函数中的数据进行运算。 四、函数重载 1.什么是函数重载? C++允许在同一范围中声明几个功能类似的同名函数,但是这些同名函数的形式参数(指参数的个数、类型或者顺序)必须不同,也就是说用同一个函数完成不同的功能。 2.两个重载函数必须在下列一个或两个方面有所区别: ①函数的参数个数不同。 ②函数的参数类型不同或者参数类型顺序不同。 例:

代码语言:javascript
复制
#include<iostream>
using namespace std;
int sum(int a = 1, int b = 1, int c = 1)
{
	return (a + b + c);
}
int add(int a, int b)
{
	return (a + b);
}
double add(double a, double b)
{
	return (a + b);
}
int main()
{
	cout << add(10, 8) << endl;
	cout << add(10.8, 8.2) << endl;
	system("pause");
	return 0;
}

输出结果为:

在这里插入图片描述
在这里插入图片描述

两个函数名定义一致,接收实参类型不同,所以会选择不同的函数进行运算。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-07-31 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档