0

したがって、int と 2 つの文字列を含む型のベクトルがあるとします。カスタム型のベクトルから int または文字列を取得して、他のオブジェクトと比較できるようにする最善の方法は何でしょうか?

あるベクトルをSTL型の別のベクトルにプッシュバックしようとしましたが、それはわかっています

vector<sometype> v;
vector<string> v2;
for(int i = 0; i<v.size(); ++i;)
{
    v2.push_back(v[i]);
}

動作しません。他に方法がわかりません。

4

1 に答える 1

0

あなたがsometypeコードを提供しなかったので、私は自分でサンプルコードを書きました。

class sometype {
  int a;
  std::string b;
  std::string c;

public:    
  friend bool operator==(const sometype& lhs, const sometype& rhs);
};

bool operator==(const sometype& lhs, const sometype& rhs) {
  if (lhs.a == rhs.a &&
      lhs.b.compare(rhs.b) == 0 &&
      lhs.c.compare(rhs.c) == 0) {

    return true;
  }

  return false;
}
于 2013-11-10T04:27:48.423 に答える