例如,我已經定義了類Foo和向量VEC:在C++中,如何通過給對象的成員找到對象向量中的某些項目?
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
class foo {
public:
foo(int flag, char ch):flag(flag), ch(ch) {}
int flag;
char ch;
};
int main(void)
{
vector<foo> vec;
vec.push_back(foo(1,'a'));
vec.push_back(foo(2,'b'));
vec.push_back(foo(3,'c'));
//blabla...
}
我發現如何找到一個元素:How to find an item in a std::vector?
但現在我想只給一個char找對象,比如'b'。我怎樣纔能有效地實現這個目標?
你知道如何遍歷一個向量並使用==運算符嗎? –
你也可以使用'std :: find'。 –
@DavidHaim我知道,但是我覺得當矢量變得太大時效率很低。所以...^_^ –