basics

C++ in 2016

A short overview on what is to expect from C++ in 2016:

C++ in 2016

by Jens Weller

From the article:

Like in the previous years, a short outlook into the fresh year regarding C++...

Wandbox online compiler -- Bartosz Bielecki

The online compiler Wandbox offers new functionality.

Wandbox

It offers now the following features:

  • support for newest (HEAD) versions of GCC and Clang
  • support for various versions of Boost (from 1.47 to 1.60)
  • support for emacs/vim key bindings
  • permalinking your code snippets

Modern C++ Features – keyword `noexcept`--Arne Mertz

Explications of the noexcept keyword:

Modern C++ Features – keyword `noexcept`

by Arne Mertz

From the article:

I have written about handling exceptions some time ago, and about the levels of exception safety last week. What I have not touched yet are exception specifications. I will catch up on those with this post.

C++98 had the possibility to denote the types of exceptions that could be thrown from a given function by using throw(<exception list>). In theory, the runtime had to check if any exception emitted by the function was indeed in that list or derived from one of the types in the list. If it wasn’t, the handler std::unexpected would be called...

Levels of Exception Safety--Arne Mertz

A nice introduction to C++ exceptions:

Levels of Exception Safety

by Arne Mertz

From the article:

Exceptions are part of C++. They are thrown by the standard library classes, and sometimes even if we are not really using the standard library. So, unless we are in a very restrictive environment like embedded programming and have exceptions disabled in the compiler, we need to be prepared and deal with the fact that exceptions simply can happen.