26. Formatting the Printed Board

Formatting the Printed Board

In the previous exercises, you stored and printed the board as a vector<vector<int>> , where only two states were used for each cell: 0 and 1 . This is a great way to get started, but as the program becomes more complicated, there will be more than two possible states for each cell. Additionally, it would be nice to print the board in a way that clearly indicates open areas and obstacles, just as the board is printed above.

To do this clearly in your code, you will learn about and use something called an enum . An enum , short for enumerator, is a way to define a type in C++ with values that are restricted to a fixed range. For an explanation and examples, see the notebook below.


This section contains either a workspace (it can be a Jupyter Notebook workspace or an online code editor work space, etc.) and it cannot be automatically downloaded to be generated here. Please access the classroom with your account and manually download the workspace to your local machine. Note that for some courses, Udacity upload the workspace files onto https://github.com/udacity , so you may be able to download them there.

Workspace Information:

  • Default file path:
  • Workspace type: jupyter
  • Opened files (when workspace is loaded): n/a

On to an Exercise

In the next exercise, you will start the process of storing the board using a custom enum type. To get started with this process, you will write some code to convert the custom type values to strings for printing.