c++ - 当我们已经拥有更强大的向量时,为什么还需要堆栈?
问题描述
在 C++ STL 中,堆栈是使用容器适配器实现的,这些适配器重写了 Vector 类的接口。但是,既然已经有了 Vector 类,为什么还要重写接口并设计一个 Stack 类呢?是因为成本效率,即维护堆栈使用更少的资源,而它可以完成所有必要的工作吗?
解决方案
当我们已经有了更强大的 goto 时,为什么还需要 for 循环和 while 循环?您应该坚持简约原则 - 使用功能最弱的工具,但功能强大到足以实现预期目标。
如果您需要的是堆栈,请依赖提供该功能的标准库类,而不是更强大的。它还可以更好地与阅读您的代码的人交流您将要做什么。
推荐阅读
- css - 如何避免背景图像与块重叠
- django - 嵌套外键上的 django rest 框架验证错误的可写嵌套序列化程序。必填字段
- python - 在 Python 中的字典列表中使用 for 循环时键入错误
- vue.js - Vuejs如何将一个项目从另一个数组添加到一个数组中?
- excel - 从具有错误#REF not value 的多个工作表中粘贴值
- r - 使用选项卡导入大型数据集
- sharepoint - 如何使用 Graph API 从 SharePoint 读取列表列值?
- r - R回归:仅当指标为真时才估计系数
- c++ - 是原子的
总是无锁? - angular - ngx-toastr 在 Angular 5 服务的上传功能中不起作用