Difference between revisions of "COMP345 Fall 2020 Midterm coverage"
From Dr. Joey Paquet Web Site
Line 29: | Line 29: | ||
***arithmetics | ***arithmetics | ||
**references | **references | ||
− | **smart pointers | + | **smart pointers (X) |
**parameter passing | **parameter passing | ||
**strings | **strings | ||
Line 74: | Line 74: | ||
***memory allocation model | ***memory allocation model | ||
***passing as parameters | ***passing as parameters | ||
− | **array decay into a pointer | + | **array decay into a pointer (X) |
**static array classes | **static array classes | ||
**STL containers (X) | **STL containers (X) | ||
***declaration, usage (X) | ***declaration, usage (X) | ||
***iterators (X) | ***iterators (X) |
Revision as of 10:04, 22 October 2020
- Notes:
- The following is the list of topics that are included in the midterm examination.
- In general, you are responsible for all the material presented in slide set 0 to 5, along with the lab examples pertaining to them (i.e. lab 1 to lab 5)
- Some specific topics will not be part of the examination. These are denoted with an "X" below.
- Slide Set 0
- none
- Slide Set 1:
- program structure
- compilation unit
- header/cpp files
- includes
- redundant includes
- namespaces
- Slide Set 2:
- structs and classes as data types
- variable initialization
- implicit/explicit type coercion
- static_cast, dynamic_cast
- upcasting/downcasting
- conversion sequences
- pointers
- pointer artithmetic
- pointers and const
- void/wild/dangling/null pointers
- stack/heap/new/delete
- arithmetics
- references
- smart pointers (X)
- parameter passing
- strings
- Slide Set 3:
- input/output streams
- cin/cout
- files stream declarations, open/close, usage
- << and >> operator overloading
- MFC serialization (X)
- Slide Set 4:
- classes vs. structs
- struct usage
- class declarations (.h and .cpp files)
- declaring/using objects
- with or without pointers
- inline functions/methods
- const specifier
- static specifier
- friends
- constructors/destructors
- declaration/implementation
- initialization list
- implicit/explicit constructor calls
- call chain
- inheritance
- overriding/overloading
- vs. constructor/destructor implementation
- assignment operator
- copy constructor
- shallow/deep copy
- multiple inheritance
- virtual inheritance
- diamond problem
- Slide Set 5:
- statically allocated arrays (one or multidimensional)
- declaration, usage
- memory allocation model
- passing as parameters
- dynamically allocated arrays (one-dimensional) (multidimensional - X)
- declaration, usage
- memory allocation model
- passing as parameters
- array decay into a pointer (X)
- static array classes
- STL containers (X)
- declaration, usage (X)
- iterators (X)
- statically allocated arrays (one or multidimensional)