C++——C++与C语言中的一些基础区别

在C++中,添加了namespace这个命名空间,命名空间的一些基本作用:

  1.命名空间相当于一个文件夹,里面包含的所有的类型都相当于里面的文件,这样就避免了命名冲突,例如MS::File、IBM::File两个类名就不会冲突,此时类的全名应该包括namespace。

  2.位于namespace下的类型或者函数不是全局的,使用的时候必须使用namespace作为前缀,这跟寻找文件,必须采用绝对路径的道理相同。

  3.在头文件中,禁止使用using语句来包含一个namespace。

在C++中,我们交换两个变量,可以传递两个变量的引用。

容器都不是一个完整的类型,必须加上内置的类型才能使用。例如: vector<int>, vector<string>.

vector不要越界访问,否则结果是未定义的;vector中的元素都是副本,与之前的变量无关。

malloc与new之间的区别:

  1.malloc申请的内存空间是没有初始化的。

  2.new运算符首先申请heap内存,然后对数据进行构造(即初始化),最后返回地址,该地址为申请类型的指针类型。

  3.new是运算符,malloc是函数。

原文地址:https://www.cnblogs.com/gjn135120/p/4014311.html