C++初阶学习第一弹——入门学习C++

2024-07-13 1071阅读

目录

1.什么是C++

2.C++关键字

 3.命名空间

3.1命名空间的定义

 3.2命名空间的使用

1、加命名空间名称及作用域限定符

2、使用 using 将命名空间中某个成员引入

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

4.C++输入&输出

 5.缺省参数

5.1 缺省参数概念

5.2缺省参数分类

6. 函数重载

6.1 函数重载概念

6.2参数类型不同

6.3参数个数不同

 6.4 参数类型顺序不同


1.什么是C++

C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的 程序,需要高度的抽象和建模时,C语言则不合适。 1982年,Bjarne Stroustrup博士在C语言的基础上引入并扩充了面向对象的概念,发明了一 种新的程序语言。为了表达该语言与C语言的渊源关系,命名为C++。因此:C++是基于C语言而 产生的,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的 程序设计,还可以进行面向对象的程序设计。

2.C++关键字

C++总计63个关键字,而C语言有32个关键字,从关键字角度来说C++兼容C语言。

C++初阶学习第一弹——入门学习C++

 3.命名空间

在C/C++中,变量、函数和后面要学到的类都是大量存在的,在命名过程中 难免会引起冲突,为了以避免命名冲突或名字污染,namespace关键字的出现就是针对这种问题的。

#include 
#include 
int rand = 10;
// C语言没办法解决类似这样的命名冲突问题,所以C++提出了namespace来解决
int main()
{
 printf("%d\n", rand);
return 0;
}

上面的代码会出现译    //后后报错:error C2365: “rand”: 重定义;以前的定义是“函数”

是因为在数据库中也有 rand 这个定义函数,所以就冲突了。

3.1命名空间的定义

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

namespace WBY
{
int rand=0;
struct STnode
{
struct STnode* node;
int val;
};

int Add(int left, int right)
 {
     return left + right;
 }
namespace N2
 {
     int c;
     int d;
}
}

    命名空间中可以定义变量/函数/类型,也可以在namespace中嵌套namespace。

 3.2命名空间的使用

1、加命名空间名称及作用域限定符

int main()
{
	printf("%d", WYB::a);
	return 0;
}
解释

C++初阶学习第一弹——入门学习C++

2、使用 using 将命名空间中某个成员引入

C++初阶学习第一弹——入门学习C++

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

C++初阶学习第一弹——入门学习C++

4.C++输入&输出

// std是C++标准库的命名空间名,C++将标准库的定义实现都放到这个命名空间中

C++初阶学习第一弹——入门学习C++

1. 使用cout标准输出对象(控制台)和cin标准输入对象(键盘)时,必须包含头文件 以及按命名空间使用方法使用std。

2. cout和cin是全局的流对象,endl是特殊的C++符号,表示换行输出,他们都包含在包含头文件中。

3.是流提取运算符。

4. 使用C++输入输出更方便,不需要像printf/scanf输入输出时那样,需要手动控制格式。 C++的输入输出可以自动识别变量类型。

 5.缺省参数

5.1 缺省参数概念

缺省参数是声明或定义函数时为函数的参数指定一个缺省值。在调用该函数时,如果没有指定实 参则采用该形参的缺省值,否则使用指定的实参。

C++初阶学习第一弹——入门学习C++

// 没有传参时,使用参数的默认值 Func(10);   // 传参时,使用指定的实参

5.2缺省参数分类

全缺省参数

void Fun(int a=10,int b=20,int c=30)
{
	
	cout 
VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]