fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. enum Status{Idle, Busy};
  5.  
  6. std::ostream& operator<<(std::ostream& os, const Status status)
  7. {
  8. switch (status)
  9. {
  10. case Idle: return os << "Idle";
  11. case Busy: return os << "Busy";
  12. default: return os << "Status:" << status;
  13. }
  14.  
  15. return os << "<error>";
  16. }
  17.  
  18. class text
  19. {
  20. public:
  21. void SetStatus(Status s);
  22. Status getStatus();
  23. private:
  24. Status s;
  25. };
  26. void text::SetStatus(Status s)
  27. {
  28. this->s = s;
  29. }
  30. Status text::getStatus()
  31. {
  32. return this->s;
  33. }
  34.  
  35. int main()
  36. {
  37. text myText;
  38. myText.SetStatus(Busy);
  39. cout << myText.getStatus() << endl; // should output "Busy"
  40. }
  41.  
Success #stdin #stdout 0s 2724KB
stdin
Standard input is empty
stdout
Busy