允许在不修改底层容器的情况下排序和删除项目的类(可能是代理)的命名
Posted
技术标签:
【中文标题】允许在不修改底层容器的情况下排序和删除项目的类(可能是代理)的命名【英文标题】:Naming of a class (perhaps a proxy) that allows sorting and removing items without modifying the underlying container 【发布时间】:2020-05-13 10:13:51 【问题描述】:我想知道我在c++ 中开发的将索引存储到容器的class 的合适naming 是什么。基本功能与view 相同。如果项目是非常量的,则可以在底层容器中修改项目。然而,由于类存储底层容器的索引,它可以生成一个独立于底层容器的视图,即无需修改它。这可以通过对索引进行排序或删除它们来完成。那么该类是代理还是此类的适当名称是什么?遵守流行的c++ 词汇是相关的。
【问题讨论】:
你的类实际上是一个范围。无论如何,您的问题与 SO 无关。 有没有更好的地方提问? 一个“视图”通常不允许修改实际的容器 你的班级似乎和QSortFilterProxyModel有相似之处。 我想这取决于上下文。模型/视图支持修改模型。 【参考方案1】:在不修改底层容器的情况下排序和删除项目听起来像 filter 或 search。
过滤器标签通常用于变量名。例如向量、映射或其他保存索引或指向项目的指针。
搜索标签主要用于函数和类。可能是因为搜索算法很容易变得复杂。
【讨论】:
以上是关于允许在不修改底层容器的情况下排序和删除项目的类(可能是代理)的命名的主要内容,如果未能解决你的问题,请参考以下文章
Movilizer:在不更改数组键的情况下对数据容器进行排序