类与对象
C++类与对象学习心得:从面向过程迈入面向对象
最近学完C++第五章类与对象,彻底理解了面向过程和面向对象两种编程思维的差别,也摸清了C++封装的核心逻辑。
以前写代码习惯把数据和功能分开,流程一步步往下走,就是典型的面向过程;而类相当于把一组相关的属性(成员变量)和行为(成员函数)打包封装在一起,对象就是类实实在在的实例。通过 public 、 private 控制成员访问权限,把内部细节隐藏,只开放对外接口,既保证数据安全,代码结构也更规整。
构造函数、析构函数、拷贝构造是对象生命周期的关键:构造函数负责创建对象时初始化,析构函数销毁对象时释放资源,拷贝构造区分浅拷贝和深拷贝,处理堆内存复制时很容易踩坑,深拷贝必须手动新开内存,避免多个对象共用一块内存释放出错。
后面又接触了对象指针、 this 指针、静态成员、友元、常对象等知识点: this 指针区分同名成员变量;静态成员属于整个类,所有对象共享一份;友元打破封装限制,方便跨类访问;const修饰的常对象、常成员函数,保障运行中数据不会被意外修改。
整体学下来最大的感悟:面向对象不只是新语法,更是组织代码的思路。把现实事物抽象成类,用封装管理数据与行为,代码复用性、维护性比面向过程高很多。接下来还要多写实例练熟构造析构、深浅拷贝这些易错点,把面向对象基础打牢。
浙公网安备 33010602011771号