I am having a problem with QFlags class. Here is an pseudo-code example. I'll appreciate any comment/advise. Thanks.

Qt Code:
  1. class A {
  2. ...
  3. public:
  4. enum class SignalState {ENTRY, EXIT};
  5. ...
  6. };
  7.  
  8. class B {
  9. public:
  10. Q_DECLARE_FLAGS(SignalUsage, A::SignalState)
  11. B () : usage(A::SignalState::ENTRY | A::SignalState::EXIT) // fails
  12. {
  13. }
  14. B (int) : usage(std::initializer_list<SignalUsage>({A::SignalState::ENTRY, A::SignalState::EXIT}) // fails
  15. {
  16. }
  17. B (char) : usage(A::SignalState::ENTRY) // compiles
  18. {
  19. usage |= A::SignalState::EXIT; // compiles
  20. }
  21. private:
  22. SignalUsage usage;
  23. }
To copy to clipboard, switch view to plain text mode