一.命名空间
在我们写C++的时候开头总会加上这一句话
为什么呢?
这是因为在标准库中,将变量名和一些函数放在了一个叫做
std的命名空间,相当于创造了一个私有的作用域。
而当我们需要使用的时候可以将这个作用域展开,使其成为全局域的一部分,也可以只对其中一个函数进行展开,
格式为using 命名空间::空间里某个东西
当然我们需要使用的时候也可以直接去查找
格式为: 命名空间::空间里的函数
当然我们也可以自己创建命名空间,以免命名冲突
当我们想使用rand这个名字时候,发现标准库中已经用过了,那我们如果想用,就得创建一个私有的命名空间
当然命名空间也是可以嵌套使用的
二.函数重载
在C中我们想实现两个不同类型数字的相加需要使用两个不同的函数名
这样对于使用者来说,还要区分不同函数名,而C++中我们可以使用同一种名字
构成重载函数的几个条件:参数类型不同,参数数量不同。
三.内联函数-----inline
内联和C语言中利用define来写一个简短的函数很像
都是直接替代
就相当于a+b替换掉Sum(2,3)这个的好处是减少调用函数的时间,但是只能适用于简短的函数,不然多次调用过长的函数会增加的代码量,在VS中对于长代码甚至直接就不替换,直接就调用函数。
但是内联函数也不是什么作用也没有,对于C那种define add(a,b)((a)+(b))可以避免忘加括号所导致的答案错误。
四.引用---&
在C中我们总因为指针苦恼,但是在C++中引用很好的解决了这个问题
引用就相当于a的别名
对于权限的放大
我们可以避免 const int&b=a;
虽然引用在语法上要空间但是本质还是指针
--------------------------------------------------------------------------------------------------------
感谢大家的观看