Course Outline
Introduction and Overview of Course Information for Government
Comparing C, C++, Java, and C# for government applications
The in-class development environment for government use
Alternative development environments suitable for government projects
C++ Programming Building Blocks for Government
The main function and standard I/O operations for government systems
- Displaying values and strings to cout for government applications
- Reading values from cin in government contexts
- Formatting output with stream manipulators for clarity and precision in government reports
Objects, constants, and references for government programming
- Declaring and initializing variables for secure government data handling
- Leveraging C++ 11/14 new keywords for enhanced functionality in government software
- Working with integer and floating-point data types for accurate government calculations
- Performing calculations and displaying results for transparent government operations
- Utilizing references for efficiency and constants for safety in government code
Defining and calling functions for government applications
- Passing arguments to functions and returning values from functions for robust government software
- Differentiating between call-by-value, call-by-reference, and call-by-address methods in government programming
- Understanding scope, duration, and initial values of variables for reliable government systems
Decisions, loops, and logic for government software development
- Making decisions with if/else statements for efficient government processes
- Distinguishing between bool and int logical values in government algorithms
- Creating if/else statement "chains" for complex government decision-making
- Implementing loops with while and for constructs for iterative government tasks
- Using C++ range-based for loops for streamlined data processing in government applications
- Applying equality, relational, and logical operators for accurate government logic
Arrays, pointers, and strings for government programming
- Declaring and using arrays and pointers for efficient data management in government systems
- Storing strings in character arrays for secure government communications
- Accessing array elements via pointers for optimized government data access
- Differentiating between pointers and references for precise government coding practices
- Utilizing the standard string class and functions for reliable government text handling
Defining C++ Classes and Objects for Government Applications
Encapsulating higher-level data types for secure government software
- Using public member functions and private data members to protect government information
- Managing protected class members for controlled access in government projects
- Implementing constructors and destructors for safe initialization and cleanup of government objects
- Utilizing the this pointer for self-reference in government classes
- Applying the class member operator (::) for clear and concise government code
Declaring, accessing, and modifying objects for government use
- Manipulating arrays of objects, pointers to objects, and references to objects for flexible government data structures
- Invoking member functions for dynamic government operations
- Defining const member functions for immutable government data
- Passing objects by value and by reference for efficient government function calls
Overloading and templates for enhanced government software
- Simplifying class interfaces for user-friendly government applications
- Understanding function signatures for precise government method definitions
- Overloading assignment (=) and insertion (<<) operators for intuitive government data manipulation
- Implementing friend functions and classes for specialized government functionality
- Explicit copy/move construction for controlled data transfer in government systems
- Avoiding default assignment and copy construction to prevent unintended side effects in government code
- Utilizing STL templates to define families of classes for scalable government solutions
Separating interfaces and implementations for modular government software
- How separation supports code reuse in government projects
- Building header files and code files for organized government development
Extending Classes via Inheritance for Government Applications
Deriving new classes from existing classes for enhanced government functionality
- Construction and destruction of derived objects for reliable government object management
- Achieving reusability through incremental extensions in government software
- Distinguishing between base classes and derived classes for structured government class hierarchies
Utilizing polymorphic functions for flexible government programming
- Overriding virtual base-class member functions in derived classes for dynamic government behavior
- Enabling runtime lookup of functions through base-class pointers and references for adaptable government systems
Managing dynamic data for secure government applications
- Allocating and deallocating memory with new and delete for efficient government resource management
- Handling errors with try and catch blocks for robust government error handling
- Avoiding memory leaks to ensure long-term stability of government software
- Utilizing lambdas and smart pointers for modern, secure government programming practices
Standards and Portability for Government Software Development
- Ensuring applicability to Windows and UNIX/Linux environments for cross-platform government solutions
- Adhering to ANSI/ISO C++ 11/14 and evolving standards for up-to-date government software development
Requirements
Testimonials (3)
Detailed explanation, re-iteration of points in a quite subtle way that really drove the knowledge home very well. Rod's willingness to double-check the odd obscure question that we rasied, to be sure that his answers were 100% right. Also, his interest in discussing the pros & cons of alternate coding styles so that we learnt not only how to use C++ in our intended way, but why it should be done that way.
Nick Dillon - cellxica Ltd
Course - Using C++ in Embedded Systems - Applying C++11/C++14
Experience sharing, it's teacher's know-how and valuable.
Carey Fan - Logitech
Course - C/C++ Secure Coding
The live coding