相关疑难解决方法(0)

向量,结构和std :: find

再次我与矢量.我希望我不会太讨厌.我有这样的结构:

struct monster 
{
    DWORD id;
    int x;
    int y;
    int distance;
    int HP;
};
Run Code Online (Sandbox Code Playgroud)

所以我创建了一个矢量:

std::vector<monster> monsters;
Run Code Online (Sandbox Code Playgroud)

但现在我不知道如何搜索向量.我想在矢量中找到怪物的ID.

DWORD monster = 0xFFFAAA;
it = std::find(bot.monsters.begin(), bot.monsters.end(), currentMonster);
Run Code Online (Sandbox Code Playgroud)

但显然它不起作用.我想只通过结构的.id元素进行迭代,我不知道该怎么做.非常感谢帮助.谢谢 !

c++ vector find data-structures

30
推荐指数
4
解决办法
5万
查看次数

使用带谓词的std :: find

我想使用std::find函数和谓词(不确定我是否使用正确的单词).这是代码

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
class foo {
public:
  typedef pair< int, vector<int> > way;
  typedef pair< int, int > index;
  typedef pair< index, vector<way> > entry;
  vector< entry > table;

  void bar() 
  {
     vector<int> v1;
     v1.push_back(1);
     v1.push_back(2);

     way w = make_pair( 1, v1 );
     vector<way> v2;
     v2.push_back(w);

     index id = make_pair( 10, 20 );
     entry en = make_pair( id, v2 );
     table.push_back( en );
  }
  void insert()
  {
     index new_id = make_pair( …
Run Code Online (Sandbox Code Playgroud)

c++ predicate vector find

11
推荐指数
2
解决办法
3万
查看次数

标签 统计

c++ ×2

find ×2

vector ×2

data-structures ×1

predicate ×1