1.整体认识
C++就是在C语言的基础之上做出了进一步的优化,改进了C语言里面的某些不足
2.域作用限定符
这样的打印结果就是全局域里面的a=10,不会在局部进行寻找;
3.命名空间--命名空间域
命名空间域只影响使用,不影响生命周期;
局部域和全局域既影响使用,也影响生命周期;
例如:ABC三个文件,AB里面分别定义了函数,变量等,当AB里面的某些函数,变量相同的时
候,就会因为冲突而导致报错,我们可以使用命名空间把他们封装起来,这样在访问的时候就你是
你的,我是我的,但是需要指定;
namespace就是用来定义命名空间的;
主函数里面要想使用包含的文件,文件里面又有命名空间进行封装,这个时候有3种方法
(1)指定各自的命名空间
(2)全局展开,但是不建议使用
using namespace std(相当于把库函数展开)
(3)局部展开:namespace
using std::cout
using std::endl
或者就是std::cout;std::cin;
就是编译的时候,先去局部找,再去全局找,展开命名空间就会到命名空间寻找;
4.自动识别类型
endl等价于斜杠n,也就是换行的作用,cout是流插入,cin是流提取;
我们在使用C语言的时候,需要%d,%f指定数据类型,而且在进行输入输出的时候也需要标注
但是C++会自动识别,就是我们定义了之后在使用的时候不用标记数据类型,编译器自动识别
5.缺省参数
如同下面的这个例子,缺省值就是如果你给我就使用,调用的时候不传参数,就使用
使用缺省值,必须从右向左连续使用;
这个里面直接给出第二个值就是错误的;
给缺省值,必须从右向左连续给;
第一种就是对的,下面跳过中间的就是错误的,这个时候必须传一个参数,因为a没有缺省值
6.缺省的意义
缺省参数存在的意义,我们在开辟空间的时候,如果我们知道要开辟空间大小,就直接进行传参,
如果不确定就使用缺省参数作为默认值。