gpt4 book ai didi

c++ - 将对象 vector 划分为 2 个或更多子组

转载 作者:行者123 更新时间:2023-11-30 00:40:22 24 4
gpt4 key购买 nike

我想将引用 vector 划分为 MyObject (即 vector<MyObject*> )根据一些共同特征分成 2 个或更多子 vector 。

我有一个等价函数 bool belongToSameGroup(MyObject *x, MyObject *y);这是true如果 MyObject 的某些数据字段相等,false否则。因为这种等价性不是普遍的并且仅用于特定目的,所以我不想重载 operator== .

什么是我可以创建的最佳方式,比方说,<vector<MyObject*> 的 vector 的(即 vector< vector<MyObject*> > ),以便根据函数 belongToSameGroup 下的等价性对元素进行分组?我不想做一堆 for循环并尽可能利用 STL 算法和容器。

最佳答案

我认为 std::partition 是您想要的。 (嘿,它甚至在你的问题的标题中!)

关于c++ - 将对象 vector 划分为 2 个或更多子组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6158608/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com