CTE Solutions chair
Quick Search:  
Course No.  
FacebookTwitterLinkedInYouTube
Savings

Got A Question?
Talk to an Educational Consultant and get the answers you need.

By Phone
Ottawa: 613-798-5353
Toronto: 416-284-2700
Toll Free: 866-635-5353

right arrow Ask your question online

PR003 - Advanced C++

View Dates and Locations

Summary


Programming Training3 days


Through hands-on laboratory and focused class discussions, participants master essential skills by exploring, experimenting, and solving problems. With the support and supervision of an experienced educator, students are guided in appropriate steps on a live, dedicated UNIX system supporting the C++ Programming Language. Each student receives a handbook consisting of detailed and carefully crafted, modular guides that provide step-by-step instructions, command summaries, and essential diagrams. This handbook includes appendices and a complete index, making it an essential resource both in the classroom and back on the job.


Audience


  • C++ Programmers
  • Class Designers

Prerequisites



Objectives


After completing this course students are able to:



  • Identify good C++ programming practices in worked examples
  • Use advanced operators including new and delete
  • Define operators as member functions and non-member functions appropriately
  • Use IO streams programming
  • Expand on the use of const in a C++ program
  • Properly define constructors and destructors
  • Expand on the use of dynamic binding and polymorphism in class design
  • Create template classes and functions
  • Enhance the stability of programs with exceptions
  • Code mutable class members appropriately
  • Make library design more stable by naming namespaces
  • Identify aspects that change upon ANSI standardization
  • Understand six special functions in C++
  • Understand common C++ pitfalls
  • Employ C++ Idioms
  • Enhance the stability of programs with exceptions
  • Use new memory model (six new and six delete operators)
  • Use STL 

Table of Contents



  • C++ Refresher
  • C++ Idioms
  • C++ Templates
  • C++ Exceptions
  • C++ Memory
  • C++ STLEmploy  

Module 1. Refresher
1. Classes
2. Object Initialization
3. Heap Memory
4. Classes Reuse
5. Polymorphism
6. Namespace
7. The std Namespace
8. Type Cast
9. Exercise

Module 2. C++ Idioms
1. Reference Counting Idiom
2. Delegation Idiom
3. Virtual Friends Idiom
4. Virtual Constructor Idiom
5. Implementation Hiding Idiom
6. The Resource is acquisition is initialization Idiom
7. Exercise

Module 3. Template
1. Introduction
2. Class Template
3. Template Details
4. auto_ptr class
5. Function Template
6. Exercise

Module 4. Exceptions
1. Motivation
2. Introduction to Exceptions
3. Handling an Exception
4. Exception Specification
5. Exceptions, constructors and destructors
6. Exercise

Module 5. Memory management
1. The Six new Operators
2. The Six delete Operators
3. Predeclared operator new and delete
4. User defined operator new and delete
5. Overloading new and delete
6. Exercise

Module 6. STL
1. STL
2. STL Containers
3. Sequence Containers
4. Associative Containers
5. Adaptors
6. Container Adaptors
7. Iterators
8. STL Algorithms
9. Vector Container
10. Deque Container
11. List Container
12. Maps
13. Container Adaptors
14. Class String 


Other Notes


This course can be delivered in a Windows or UNIX environment.  

      3 Ways to Register
$1,425.00
$1,211.25 CAD
online only

Register Online
1 (866) 635-5353
sales@ctesolutions.com
Ask About This Course

  Latest Tweet


About This Course
Certifications
Register Online and instantly save!