Learn to use Language Features Correctly Gain an introduction to metaprogramming Understand how Templates work with functions Explore C++ Idioms and Design Patterns Understand smart pointers
Highlights
Learn to use Language Features Correctly
Gain an introduction to metaprogramming
Understand how Templates work with functions
Explore C++ Idioms and Design Patterns
Understand smart pointers
Learn Policy-Based Design
Exploit Advanced Language & Library Features of C++ And Get Increased Productivity
Apply Containers: Sequence and Associative containers and Adapters
Learn Standard Template Library with concept based programming
Explore Boost and The Boost Libraries
Course Details
Part 1: Using Language Features Correctly
Const and Casting
Const correctness
Overloading on const
C++ cast operators
Mutable
Conversions and Scope
Standard conversions
Converting constructors
User defined conversions
Namespaces
Koenig lookup
Nested types
Static
Proper Exception Handling
Throwing and catching correctly
Exception safe code
Memory Management
The new handler
Placement new
Overloading new and delete
Part 2: Templates
Template Functions
What are templates?
Implementing template functions
Template instantiation
Template Classes
Creating a template class
Class instantiation
Non-type template parameters
Specialization
Template Metaprogramming
A brief introduction to metaprogramming
Part 3: C++ Idioms and Design Patterns
Implementing Value Types
What are value types?
Construction and destruction
Copying and assignment
Operator overloading
The Handle/body Idiom
The Bridge design pattern
Using Bridge to decouple compilation
Implementing handle/body
Functors
What are functors?
Implementing functors using operator overloading
Smart Pointers
What are smart pointers?
Uses of smart pointers in C++
Implementing a simple smart pointer
Reference counting and smart pointers
Std::auto_ptr (deprecated)
Singletons
The Singleton design pattern
A naïve implementation
Problems with Singleton in C++
Controlling Singleton lifetime
Policy-Based Design
Efficient library design
Mixing templates and multiple inheritance
Policies and policy classes
Part 4: Standard Template Library
STL concepts
Concept-based programming
Containers, iterators and algorithms
Containers
Sequence containers
Associative containers
Adapters
Traits
The need for traits
Implementation of traits in STL
Iterators
The Iterator design pattern
Iterator concepts in C++
Iterators and containers
Implementing and using iterators
Stream iterators
Algorithms
The STL standard algorithms
Creating and using algorithm
Part 5: The Boost Libraries
Introduction to Boost
What is Boost?
Obtaining and installing Boost
Overview of the Boost libraries
Common Boost Libraries
boost::tuple
boost::any
boost::ref
The Boost smart pointers
boost::bind
Who Should Attend
Experienced C++ programmers, who are looking to gain advanced skills and programming techniques using C++
History Of JBI Training
JB International (JBI Training) is a London (UK) company which was formed in 1995, delivering Technology training courses to leading organisations.
JBI has always focused on cutting edge technology and is widely recognised as a leading specialist provider of training in the fields of Artificial Intelligence, Machine Learning, Analytics, DevOps, Security....
Instructors & Consultants
We are confident that you will find our instructors to be among the finest around. Our Instructors bring into the classroom the experience of applying their skills in the "Real World" as systems developers and consultants.
Many are leading figures in the world of Technology and are able to add a lot of value to your training. The instructors are personable and able to communicate their technical knowledge effectively to delegates.
Increasingly, clients are looking for consultancy and project mentoring to help get leading-edge systems design , development and implementation underway smoothly.
JBI is able to provide this service and have a number of leading consultants who can add value to client projects.
Java is the most capable programming dialect carter for standalone application, Networked Application and the web application. As it is a stage autonomous dialect which implies it will keep running in any Operating System the length of Java Framework is available.
This Java course introduces delagates to principles of multithreading and using threads. Practical, Instructor-led.
Inventor CAM training teaches everything you need to program your CNC machine to generate your Inventor models. You’ll learn to create CNC strategies, create a CAM setup, plot toolpaths, simulate and post process them to G-code to program your CNC machine.
Join our 6-hour Microsoft Excel Intermediate course for professionals and analysts. Elevate your data analysis skills with advanced functions, PivotTables, and interactive dashboards. Learn conditional formatting and data visualization techniques to enhance your spreadsheet management capabilities.
Learn the fundamental programming concepts using Python whilst creating a working music library application.This course is an ideal introduction for those looking to explore programming for fun or as a career.
© 2024 coursetakers.com All Rights Reserved. Terms and Conditions of use | Privacy Policy