c++深拷贝以及浅拷贝
浅拷贝:简单的赋值拷贝操作(这个是系统默认提供的)
深拷贝:在堆区重新释放空间,进行拷贝操作(要自己写的)——当存在指针就需要用new从堆中申请内存空间
堆栈保存的信息
内存区域类型:
-
寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制;
-
栈:存放基本类型 的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new出来的对象)或者常量池中(字符串常量对象存放的常量池中),局部变量【注意:(方法中的局部变量使用final修饰后,放在堆中,而不是栈中)】
-
堆:存放使用new创建的对象,全局变量
-
静态域:存放静态成员(static定义的);
-
常量池:字符串常量和基本类型常量(public static final)。有时,在嵌入式系统中,常量本身会和其他部分分割离开(由于版权等其他原因),所以在这种情况下,可以选择将其放在ROM中 ;
-
非RAM存储:硬盘等永久存储空间