クラスオブジェクトがC ++セットに存在するかどうかを確認するにはどうすればよいですか?

究極のバスター

ユーザーが一定量の名前を入力できるようにするコードを記述し、それらの名前を含むオブジェクトがセットに存在するかどうかを確認しようとしています。私が欲しいのは、プログラムがユーザーによって入力された名前を取得し、セットをループして、名前がオブジェクト要素のいずれかに存在するかどうかを確認し、名前が存在するかどうかをコマンドラインに出力することです。

何らかの理由で、名前がセットに存在する場合でも、セット内の各要素に対して「名前はセットに存在しません」と出力されます。これを正しくチェックするにはどうすればよいですか?また、一致するものが見つかる(または見つからない)前にチェックが複数回失敗した場合でも、「存在しません」というメッセージを1回だけ出力するようにするにはどうすればよいですか?

これまでの私のコードは次のとおりです。

#include <iostream>
#include <set>
#include <string>
#include <cassert>

using namespace std;

class Name {
   public:
      Name();
      Name(string n);
      bool operator<(Name right)const; 
      string get_name()const;
   private:
      string name;             
};

Name::Name(){}

Name::Name(string n)
{
   name = n;
}

bool Name::operator<(Name right)const
{
      bool result = true;
      return result;
}

string Name::get_name()const
{
      return "Name name is: " + name + "\n";
}

int main(){

set<Name>NamesSet;
NamesSet.insert(Name("Patrick Star"));
NamesSet.insert(Name("Jason"));
NamesSet.insert(Name("Bob Marl"));
NamesSet.insert(Name("Greg"));
set<Name>::iterator pos; 


int numjobs;
string cusname;
cout << "Number of names to enter:" << endl;
cin >> numjobs;
cin.ignore();
if (numjobs != 0 || numjobs > 0) {
   for (int i = 0; i != numjobs; i++)
   {
      cout << endl;
      cout << "Name " << i+1 << ": " << endl;
      getline(cin, cusname);

      for (pos = NamesSet.begin(); pos != NamesSet.end(); pos++) 
      {
         if (NamesSet.count((*pos).get_name()))
         {
            cout << (*pos).get_name() << " exists in set";
            break;
         }
         else 
         {
            cout << "Name does not exist in set";
         }
      }
   }
}

   return 0;
}
Rika

これらを変更する必要があります:

bool Name::operator<(const Name& right)const
{
      return (this->name < right.name);
}

string Name::get_name()const
{
      return name;
}

これは実用的なサンプルになります:

#include <iostream>
#include <set>
#include <string>
#include <cassert>

using namespace std;

class Name {
   public:
      Name();
      Name(string n);
      bool operator<(const Name& right)const; 
      string get_name()const;
   private:
      string name;             
};

Name::Name(){}

Name::Name(string n)
{
   name = n;
}

bool Name::operator<(const Name& right)const
{
      return (this->name < right.name);
}

string Name::get_name()const
{
      return name;
}

int main()
{

set<Name>NamesSet;
NamesSet.insert(Name("Patrick Star"));
NamesSet.insert(Name("Jason"));
NamesSet.insert(Name("Bob Marl"));
NamesSet.insert(Name("Greg"));
set<Name>::iterator pos; 

string cusname = "Greg";

if ( NamesSet.count(cusname) == 1 )
{
    cout << cusname << " exists in set"<<endl;
}
else 
{
    cout<<"Nanda!";
}

   return 0;
}

http://codepad.org/kg9gtSsX

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

オブジェクトがjavascriptマップに存在するかどうかを確認するにはどうすればよいですか?

分類Dev

オブジェクトメソッドが存在するかどうかを確認するにはどうすればよいですか?

分類Dev

名前のないオブジェクトが配列に存在するかどうかを確認するにはどうすればよいですか?

分類Dev

JavaScriptで。オブジェクト内にフィールドが存在するかどうかを確認するにはどうすればよいですか?

分類Dev

THREE.jsでオブジェクトがシーンに存在するかどうかを確認するにはどうすればよいですか?

分類Dev

Ebeanでオブジェクトの存在を確認するにはどうすればよいですか?

分類Dev

JavaのLinkedListにオブジェクトが存在するかどうかを確認するにはどうすればよいですか?

分類Dev

信号がオブジェクトに存在するかどうかを確認するにはどうすればよいですか?

分類Dev

プロパティがオブジェクトに存在するかどうかを確認するにはどうすればよいですか?

分類Dev

オブジェクトにプロパティが存在するかどうかを確認するにはどうすればよいですか?

分類Dev

Pythonで、オブジェクトがまだ存在するかどうかを確認するにはどうすればよいですか?

分類Dev

要素がDjangoクエリセットに存在するかどうかを確認するにはどうすればよいですか?

分類Dev

データセットがパッケージに存在するかどうかを確認するにはどうすればよいですか?

分類Dev

オブジェクトとそのプロパティが存在するかどうかを確認するにはどうすればよいですか?

分類Dev

オブジェクトが存在し、Xプロパティがあるかどうかを確認するにはどうすればよいですか?

分類Dev

java-オブジェクトが特定のクラスのタイプかどうかを確認するにはどうすればよいですか?

分類Dev

要素がアイテムのセットに存在するかどうかを確認するにはどうすればよいですか?

分類Dev

キーワードセットが文に存在するかどうかを確認するにはどうすればよいですか?

分類Dev

追加する前に、同じIDのオブジェクトがオブジェクトのリスト内にすでに存在するかどうかを確認するにはどうすればよいですか?

分類Dev

Googleストレージオブジェクトがライブか非最新かを確認するにはどうすればよいですか?

分類Dev

クラスがパッケージのどこかに存在するかどうかを確認するにはどうすればよいですか?

分類Dev

匿名オブジェクトにメソッドがあるかどうかを確認するにはどうすればよいですか?

分類Dev

オブジェクトに特定のメソッドがあるかどうかを確認するにはどうすればよいですか?

分類Dev

オブジェクトに特定のメソッドがあるかどうかを確認するにはどうすればよいですか?

分類Dev

オブジェクトのプロパティがゲッターかセッターかを確認するにはどうすればよいですか?

分類Dev

ColdFusionオブジェクトが存在するコンテキストを確認するにはどうすればよいですか?

分類Dev

/ proc / netのネットワークエントリがCに存在するかどうかを確認するにはどうすればよいですか?

分類Dev

MATLABのグリッド画像のどこにセントリオッドが存在するかを確認するにはどうすればよいですか?

分類Dev

Pharo Smalltalk-メッセージが別のオブジェクトのクラスで定義されたプロトコルに準拠しているかどうかを確認するにはどうすればよいですか?

Related 関連記事

  1. 1

    オブジェクトがjavascriptマップに存在するかどうかを確認するにはどうすればよいですか?

  2. 2

    オブジェクトメソッドが存在するかどうかを確認するにはどうすればよいですか?

  3. 3

    名前のないオブジェクトが配列に存在するかどうかを確認するにはどうすればよいですか?

  4. 4

    JavaScriptで。オブジェクト内にフィールドが存在するかどうかを確認するにはどうすればよいですか?

  5. 5

    THREE.jsでオブジェクトがシーンに存在するかどうかを確認するにはどうすればよいですか?

  6. 6

    Ebeanでオブジェクトの存在を確認するにはどうすればよいですか?

  7. 7

    JavaのLinkedListにオブジェクトが存在するかどうかを確認するにはどうすればよいですか?

  8. 8

    信号がオブジェクトに存在するかどうかを確認するにはどうすればよいですか?

  9. 9

    プロパティがオブジェクトに存在するかどうかを確認するにはどうすればよいですか?

  10. 10

    オブジェクトにプロパティが存在するかどうかを確認するにはどうすればよいですか?

  11. 11

    Pythonで、オブジェクトがまだ存在するかどうかを確認するにはどうすればよいですか?

  12. 12

    要素がDjangoクエリセットに存在するかどうかを確認するにはどうすればよいですか?

  13. 13

    データセットがパッケージに存在するかどうかを確認するにはどうすればよいですか?

  14. 14

    オブジェクトとそのプロパティが存在するかどうかを確認するにはどうすればよいですか?

  15. 15

    オブジェクトが存在し、Xプロパティがあるかどうかを確認するにはどうすればよいですか?

  16. 16

    java-オブジェクトが特定のクラスのタイプかどうかを確認するにはどうすればよいですか?

  17. 17

    要素がアイテムのセットに存在するかどうかを確認するにはどうすればよいですか?

  18. 18

    キーワードセットが文に存在するかどうかを確認するにはどうすればよいですか?

  19. 19

    追加する前に、同じIDのオブジェクトがオブジェクトのリスト内にすでに存在するかどうかを確認するにはどうすればよいですか?

  20. 20

    Googleストレージオブジェクトがライブか非最新かを確認するにはどうすればよいですか?

  21. 21

    クラスがパッケージのどこかに存在するかどうかを確認するにはどうすればよいですか?

  22. 22

    匿名オブジェクトにメソッドがあるかどうかを確認するにはどうすればよいですか?

  23. 23

    オブジェクトに特定のメソッドがあるかどうかを確認するにはどうすればよいですか?

  24. 24

    オブジェクトに特定のメソッドがあるかどうかを確認するにはどうすればよいですか?

  25. 25

    オブジェクトのプロパティがゲッターかセッターかを確認するにはどうすればよいですか?

  26. 26

    ColdFusionオブジェクトが存在するコンテキストを確認するにはどうすればよいですか?

  27. 27

    / proc / netのネットワークエントリがCに存在するかどうかを確認するにはどうすればよいですか?

  28. 28

    MATLABのグリッド画像のどこにセントリオッドが存在するかを確認するにはどうすればよいですか?

  29. 29

    Pharo Smalltalk-メッセージが別のオブジェクトのクラスで定義されたプロトコルに準拠しているかどうかを確認するにはどうすればよいですか?

ホットタグ

アーカイブ