On-Site Training Seminar:
C++ for Non-C Programmers
Details of this C++ Training
Who Should Attend:
- Experienced high-level language programmers with little or no
C background who are seeking a fast-track introduction to C++.
Prerequisites:
- Due to the large quantity of material presented in this course, participants should have some programming experience in a high-level language such as Pascal, PL/1 or ADA.
- Assembly language, COBOL or BASIC experience alone can be sufficient if you are a fast study, but if that's all you've got be prepared for a very challenging five days of training!
Format:
Five days of training, alternating between lecture and hands-on
lab exercises. Students will also be encouraged to complete two
or three hours of reading each evening in preparation for the next
day's material.
Supplied Materials:
Each student will receive a copy of the textbook C++ Primer Plus by Stephen Prata, along with a disk containing all course examples, lab exercises and solutions.
Course Outline:
1. Getting Started
- Evolution of Programming Languages
- History of C and C++
- Overview of C / C++ Features
- Software Development
- Single vs. Multi-Module Programs
2. Development Tools
- Windows-Based Development
- The Microsoft Visual Studio IDE
- Compile-time and run-time Debugging
3. Elements of C/C++
- The Token Stream
- Expressions
- Statements
- Declaring Variables
- Statement Blocks
- Functions
- Prototypes
- The Preprocessor
4. Data Types
- Identifiers
- Reserved Words
- Data Definitions
- Fundamental Data Types
- Constant Expressions
- Integer Constants
- String Constants
- Floating Point Constants
- Type Modifiers
5. Operators
- Arithmetic Operators
- Type Conversion Rules
- Type Casts
6. Derived Types
- Arrays
- Memory Layout
- Initialization
- Strings as char Arrays
- Structures
- Definition Syntax
- Tags
- Accessing Members
- Pointers
- Indirection
- Pointer Definition
- Pointer Indirection
- Indirect Assignment
- Pointers vs. Arrays
- Dynamic Allocation
- Structure Pointers
7. Loops and Relational Expressions
- While
- for
- Increment / Decrement Operators
- Relational Operators
- Precedence and Associativity
- String Comparison
- do…while
8. Conditional Testing
- if, if…else
- Logical Connectives
- switch
- break and continue
- while/for duality
9. Functions
- Definition Syntax
- return Statement
- Formal Parameters
- Call by Values vs. Call by Reference
- Prototypes
- Header Files
- Passing Pointers
- Passing Arrays
- const parameters
- Recursion
- Inline Functions
- References
- Default Arguments
- Function Overloading
10. Data Scope and Lifetime
- Files vs. Block Scope
- Storage Classes
- Linkage
- Lifetime
- static data
- register data
11. Objects and Classes
- Object Oriented Development
- Abstract Data Types
- Classes
- Access Specifiers
- Class Definition
- Class Implementation
- Member Functions
- Inline Member Functions
- Constructors
- Object Initialization
- Member Initializers
- Destructors
12. Source Files Management
13. Operator Overloading
- How to Overload Operators
- Generalized Stream I/O
- Standard Conversions
- Constructors as Conversions
- Friend Functions
- Static Member Data
14. Class Implementation
- Generated Member Functions
- The Default Constructor
- Copy Constructors
- Shallow vs. Deep Copy
- Overloading the Assignment Operators
- this
15. Inheritance
- Class Hierarchies
- The protected Access Specifier
- Accessor Functions
- const Member Functions
- Lvalues and Rvalues
- Is-A vs. Has-A Relationships
- Base Initializers
- Object Conversions
16. Polymorphism
- Static vs. Dynamic Binding
- Virtual Functions
- Abstract Base Classes
- Pure Virtual Functions
- Multiple Inheritance
17. Templates and the STL
- Function Templates
- Class Templates
- Interaction of STL Components
- STL Containers
- STL Iterators
- STL Algorithms
- Function Objects
Home |
Courses |
Tools |
Resources
Clients |
Successes |
Contact |
Site Map |
Links |
About Us
All text and images on this website are Copyright © 2001-2003 BD Software. All rights reserved.
|