感谢大佬的光临各位,希望和大家一起进步,望得到你的三连,互三支持,一起进步
从今天开始就要进入C++的学习了,我们这次将讲解一些C++的基础语法和一些基础的程序写发
一.C++是什么?
C++(c plus plus)是一种计算机高级程序设计语言,由C语言扩展升级而产生 ,最早1979年由本贾尼·斯特劳斯特卢普在AT&T贝尔工作室研发。
C++既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计。 C++几乎可以创建任何类型的程序:游戏、设备驱动程序、HPC、云、桌面、嵌入式和移动应用等。 甚至用于其他编程语言的库和编译器也使用C++编写。
C++拥有计算机运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力
二.C与C++的区别
C++他是C语言的一种升级版。C++是兼用C语言的,C语言是面向过程语言,而C++是面向对象语言。
面向过程和面向对象的区别
面向过程:面向过程编程就是分析出解决问题的步骤,然后把这些步骤一步一步的实现,使用的时候一个一个的依次调用就可以了。
面向对象:面向对象编程就是把问题分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在整个解决问题的步骤中的行为。
然后就是C++是可以泛型编程的,c语言是不可以的
三.第一个C++程序
接下来我们来看一下第一个程序和意义
#include<iostream>
using namespace std;
int main()
{
cout << "hello world" << endl;
return 0;
}
在C++中,头文件是不需用使用.h的,当然如果你想写也可以。using namespace std,在C++语法中是存在一个命名空间的,我们之前学习C语言的时候我们了解到,如果你想定义一个变量,比如说教师的名字姓名,我们就要使用一个结构体,但是结构体也是有弊端的,比如说结构体它是不能有函数的,而且结构体里面是不能进行初始化的,而c加加加全新的引入了一个命名空间的概念,有很多,我们需要用到的函数全部都放到了这个命令空间里面,而std就是他的一个标准命令空间
如果我不使用命名空间,我该如何写这个代码呢?
命名空间成员的访问操作符::,空间名::成员
#include<iostream>
int main()
{
std::cout << "hello world" << std::endl;
return 0;
}
cout ,就是c语言中的printf,endl就是换行的意思,可以看出在C++中打印一个东西,是不需要向c语言中一样去%d的
四.命名空间
我们之前来详细的讲一下命令空间的概念
命名空间的意义
名空间是一种将全局作用域划分为更小的、可管理的部分的机制,它允许开发者定义一组名称,并将其封装在一个独立的作用域中,以防止名称冲突。在C/C++中,变量、函数和类都是大量存在的,这些变量、函数和类的名称将都存在于全局作用域中,可能会导致很多冲突。使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突或名字污染。定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然后接一对 {}即可, {}中即为命名空间的成员
定义
namespace name//这里是名称
{
//定义函数,变量,对象类型等。。。。
}
命名空间成员的访问操作符::,空间名::成员
#include<iostream>
using namespace std;
namespace nameA
{
int a = 10;
}
namespace nameB
{
int b = 20;
}
int main()
{
cout << nameA::a <<nameB::b<< endl;
return 0;
}
命名空间只能全局范围定义(以下是错误写法)
所以在定义命名空间的时候,一定不能写到其他函数里面
void test()
{
namespace nameA
{
int a = 10;
}
cout << nameA::a << endl;
}
命名空间的嵌套定义是存在的
嵌套是可以的,但是注意访问操作符的使用
#include<iostream>
using namespace std;
namespace nameA
{
int a = 10;
namespace nameB
{
int b = 20;
}
}
int main()
{
cout << nameA::nameB::b<<endl;
return 0;
}
命名空间的别名
命名空间的名字可以翻译成这个命名空间里面的东西的对应的名字,我名字可能会取得很复杂,但是我在使用的时候可以给他取一个别名进行使用,这样子的话即便我前面写的再复杂,我用起来也很方便
#include<iostream>
using namespace std;
namespace asdasdasdasd
{
int a = 10;
}
void test()
{
namespace as = asdasdasdasd;
cout << as::a << endl;
}
总结
今天我们主要讲解了C++的第一个程序里面所有的语法,给c++开了一个头,c++的学习任重而道远,一起努力吧。