Week 9 - Defining Types (Enums, Typedef, and Structs)

Learning objectives

Upon finishing this learning module, you should be able to:

  • Design and write code using multidimensional arrays
  • Use structs to represent heterogeneous collections of data

Schedule

Day 1

Day 2

Day 3

Day 4

This week we are hitting some topics that are not covered in the regular part of the book. It is more important than usual that you check out the code samples from the files area in elearn

Multidimensional Arrays Continued

Read Ch 8.5-8.8.1. Focus on the ideas of each program and how they use 2D arrays. Don't try to memorize the details.

This video talks through some of the interesting things in the sample programs from those sections, as well as some things that could be improved in them.

Do the CPP Lab Multidimensional Arrays if you did not already.

Structs

Read learncpp.com's struct page

These videos cover structs and introduce some concepts that are not covered in the reading. This first one should be enough to prepare you for the CPPLab.

Do Structs CPP Lab

Then watch this quick video about how to use structs across multiple files:

Structs and Arrays

This video demonstrates managing more complex data by combining structs and arrays. It will help get you ready for the last assignment.

Enums

Read about enumerations in Appendix G of the textbook. This video covers the key ideas:

Do Enums CPP Lab

Typedef & Namespaces

These are topics you should know about and recognize, but will not be using frequently. Don't worry about mastery, just make sure you understand these tools when you see them.

This video covers the core ideas:

Our book doesn't have great coverage, but you can use Learncpp.com as a reference to skim for more info: Typedef page and Namespaces page