fork download
  1. #include <iostream>
  2. #include <set>
  3. #include <string>
  4. using namespace std;
  5.  
  6. class state {
  7. string name;
  8. string capital;
  9.  
  10. public:
  11. state() { name = capital = ""; }
  12. state(string s)
  13. {
  14. name = s;
  15. capital = "";
  16. }
  17. state(string s, string c)
  18. {
  19. name = s;
  20. capital = c;
  21. }
  22. // オリジナルのソース
  23. // string get_name() { return name; }
  24. // string get_capital() { return capital; }
  25. string get_name() const { return name; }
  26. string get_capital() const { return capital; }
  27. };
  28.  
  29. bool operator<(state a, state b)
  30. {
  31. return a.get_name() < b.get_name();
  32. }
  33.  
  34. // オリジナルのソース
  35. // ostream& operator<<(ostream& s, state& o)
  36. ostream& operator<<(ostream& s, const state& o)
  37. {
  38. s << o.get_name() << "'s capital is ";
  39. s << o.get_capital() << "." << endl;
  40.  
  41. return s;
  42. }
  43.  
  44. int main()
  45. {
  46. set<state> states;
  47.  
  48. states.insert(state("Illinois", "Springfield"));
  49. states.insert(state("Wisconsin", "Madison"));
  50. states.insert(state("Missouri", "Jefferson City"));
  51. states.insert(state("California", "Sacramento"));
  52. states.insert(state("Nevada", "Carson City"));
  53. states.insert(state("Arkansas", "Little Rock"));
  54. states.insert(state("Alaska", "Juneau"));
  55. states.insert(state("West Virginia", "Charleston"));
  56.  
  57. set<state>::iterator p = states.begin();
  58. do {
  59. cout << *p;
  60. p++;
  61. } while (p != states.end());
  62. cout << endl;
  63.  
  64. cout << "Looking for Wisconsin." << endl;
  65. p = states.find(state("Wisconsin"));
  66. if (p != states.end()) {
  67. cout << "Found." << endl;
  68. cout << *p;
  69. } else {
  70. cout << "State not in list." << endl;
  71. }
  72.  
  73. return 0;
  74. }
  75.  
Success #stdin #stdout 0.01s 5496KB
stdin
Standard input is empty
stdout
Alaska's capital is Juneau.
Arkansas's capital is Little Rock.
California's capital is Sacramento.
Illinois's capital is Springfield.
Missouri's capital is Jefferson City.
Nevada's capital is Carson City.
West Virginia's capital is Charleston.
Wisconsin's capital is Madison.

Looking for Wisconsin.
Found.
Wisconsin's capital is Madison.