3460:421 OOP UML Multiplicity

1234567891011121314151617
Across
  1. 2. To tell the difference between a std::string that does not have a value versus a std::string with an empty string, we could use a ____, but it is not a great solution.
  2. 5. Both multiplicities [1] and [1..*] are ______
  3. 7. A solution introduced in c++17 is ______
  4. 11. A std::string can have ____ states
  5. 12. Both multiplicities [0..1] and [0..*] are ______
  6. 13. Both multiplicities [1..*] and [*] are ______
  7. 15. Both multiplicities [1] and [0..1] are ____ ____
  8. 17. std::optional can be used on any ____ type (non-pointer)
Down
  1. 1. The std::optional allows for ____ loading/allocation
  2. 3. How we can reset a std::optional back to an empty state
  3. 4. Multivalued multiplicities are ______ in C++
  4. 6. One use case for std::optional is for an _____ return
  5. 8. A char* can have ____ states
  6. 9. Multiplicity in UML primarily refers to _____
  7. 10. The std::optional completely replaces using _____ for optional single value attributes
  8. 14. Another bad solution is a ____, where we inherit from std::string (but do not do this)
  9. 16. The null state of char* has the value _____