C++ in Detail: Exceptions
4.3 (14 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,465 students enrolled

C++ in Detail: Exceptions

All about exceptions handling in C++
4.3 (14 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,465 students enrolled
Last updated 3/2019
English
Current price: $30.99 Original price: $44.99 Discount: 31% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 4 hours on-demand video
  • 1 article
  • 34 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Assignments
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • C++ exceptions handling
  • Exception safe code
Course content
Expand all 35 lectures 03:48:52
+ Throwing and catching exceptions
8 lectures 53:02
Exception object
08:55
Stack unwinding
06:12
Throwing from constructors and destructors
08:35
Real-world examples using exceptions
03:37

In this assignment you will need to answer questions testing your knowledge of the topics from the first section of the course.

Throwing and catching exceptions
10 questions
+ Re-throwing and nested exceptions
3 lectures 19:07
Re-throwing exceptions and nested try / catch
07:50
Using std::exception_ptr
05:12
Nested exceptions
06:05
Re-throwing and nested exceptions
5 questions
+ User defined and standard exceptions
2 lectures 11:06
Creating own exception types
06:18
Standard exceptions
04:48
User-defined and standard exceptions
4 questions
+ Dynamic exception specification
2 lectures 15:51
Overview of dynamic exception specification
09:01
Violating dynamic exception specification
06:50
Dynamic exception specification
2 questions
+ Noexcept specifier
7 lectures 51:13
Intro to noexcept specifier
05:38
Noexcept vs dynamic exception specification
06:29
Other uses of noexcept specifier
04:20
Potentially throwing and non throwing functions
14:46
Why non throwing destructors
03:59
Noexcept and interfaces
05:14
When to use noexcept specifier
10:47
Noexcept specifier
4 questions
+ Noexcept operator
7 lectures 46:14
Intro to noexcept operator
08:21
Noexcept operator vs specifier
04:54
Using noexcept operator with templates (part 1)
07:25
Using noexcept operator with templates (part 2)
04:47
Noexcept operator with special functions and methods
09:50
Using noexcept operator for moving
05:16
Return value of noexcept operator
05:41
Noexcept operator
5 questions
+ Exception safety guarantees
5 lectures 32:10
Overview of exception safety guarantees
06:18
No exception safety guarantee
08:41
Basic exception safety guarantee
03:34
Strong exception safety guarantee
07:24
Nothrow exception safety guarantee
06:13
Exception safety guarantees
4 questions
+ Exercise and additional materials
1 lecture 00:09
You will need to implement 2 classes for managing identifiers.
Practice C++ and exception safety
4 questions
Additional materials
00:09
Requirements
  • Basic knowledge of C++
  • Compiler supporting at least C++11
  • Interest in C++
Description

This course is about exceptions handling in C++, including 11-17 standards.


You will learn about throwing and catching exceptions, re-throwing and nested exceptions, user-defined and standard exceptions, dynamic exceptions specification, noexcept specifier, noexcept operator.

Moreover, you will also learn exception safety guarantees, concept that will help you write robust code in C++ and other similar languages.

Lectures are provided with references to relevant C++ Core Guidelines about error handling.


Please note that this course is not for complete beginners.

Who this course is for:
  • Beginner - intermediate C++ developers
  • Students (either self-taught or at university) with at least basic knowledge of C++
  • Not for complete beginners