C++ 对象和指针的区别学习笔记
对象
对象是类的实例,占据实际的内存空间,可以调用类的成员函数和访问类的成员变量。
对象大小 = 成员变量大小 + 对齐填充
指针
指针是一个变量,存储对象的地址,可以通过指针访问对象的成员函数和成员变量。
指针大小 = 4 字节(32 位系统)或 8 字节(64 位系统)
对象和指针的区别
- 内存管理
- 对象:内存分配和释放通常是自动的(除非使用动态分配)。
- 指针:指向的内存需要手动管理,尤其是动态分配的内存。
- 访问方式:
- 对象:直接访问成员。
- 指针:通过解引用访问成员(使用 -> 操作符)。
- 生命周期:
- 对象:由作用域决定,局部对象在离开作用域时自动销毁。
- 指针:生命周期由程序员控制,指针可以指向任何作用域的变量。