This course will teach participants about data structures, pointers, arrays, and strings.
We’ll start with classes and structures and how we can define the data type as a class or structure. We’ll talk about members of classes, scope of access to members, creating and using objects in code, and type inheritance.
From there, we’ll move on to enumerations (enums). An enumeration is a data type that can be defined in your code. We’ll look at basic enum syntax, scoped vs unscoped enums, and how to use enums within our code.
Unions are next. They allow you to define a datatype and we’ll talk about the concept of that kind of a datatype, the purpose of a union, syntax for defining a union, discriminated union, and how to write code to make use of a union.
Typdef is a way to alias an existing data type. We’ll talk about defining and using typedefs in our code and why they are useful.
Then, you’ll learn how to declare and use pointer data types, how pointers act as memory addresses, address-of operator, dereferencing operator, passing parameters into a method call where that parameter is a pointer type, and using templated generic types with pointers. We’ll continue with a few more advance pointer topics. We’ll discuss references and the difference between references and pointers.
Next, you’ll learn about arrays, strings, and functions. We’ll start with the memory structure of an array, syntax to define and initialize an array, how to write code that can access and manipulate the elements within an array, passing an array as a parameter into a method, multidimensional arrays, and the general standard library arrays. We’ll take a look at the generic string type in the standard library and how to use that string.
From there, we’ll look at functions and will discuss standard library functions and how to implement your own functions. We’ll move into deeper detail of topics like overloading operators, recursive programming, lambda function syntax, templated functions, and callback functions.
You’ll learn about function pointers and how you can call a function by way of a pointer type variable, using the typedef keyword, how function signatures work, and using lambda syntax for defining function pointers.
Lastly, we’ll talk about control-flow statements, including compound statements, decision making constructs, and looping constructs.