面向对象相关问题 求教
c++吧
全部回复
仅看楼主
level 1
我用的是VScode编辑器 最近在写一个面向对象作业发现一个问题 就是你写一个派生类 但是你写着写着就会忘记基类函数里有什么成员变量和函数 前者还好说 你打开一下内存布局还能看到 后者我找不到快速方法去总览隶属于本派生类以上所有继承下来的可访问接口 比方说一个Elevator类的函数 我在基类里写了一个add_floor, 又在派生类OneWayElevator里写了一大堆代码 写着写着就忘了自己写了add_floor这个接口了 就很难受
其实这也不是什么大问题 但一想到以后管理项目时要写个顶着好几个父类的派生类就头疼 隔了几天再写代码你就完全忘了你父类里面设计了什么鬼接口 又有那些成员变量是干嘛的 更别提和别人一起做项目了
有没有有过项目设计经验的大神点拨一下
2025年05月08日 10点05分 1
level 1
[呵呵]
2025年05月08日 10点05分 2
level 1
文档呢,注释呢,clangd呢
2025年05月08日 11点05分 3
level 1
降低代码之间的耦合度,一个类尽量只做一件事情。用virtual建立抽象类,把同类的功能分开重写,最后聚合。
2025年06月23日 08点06分 4
level 6
这说明你的继承设计可能并不合理。继承是is-a的关系,父类中可以概括父类特征的函数,都应该加上virtual关键字,做成抽象接口,子类可以使用父类实现或使用override关键字标注并重写父类函数。其余不加virtual的函数,应该尽可能做成私有函数,有外部调用,才public,有子类需要调用父类函数,才protected。
2025年06月24日 11点06分 5
1