Reference documentation for deal.II version 9.3.3
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
std_cxx14 Namespace Reference

Detailed Description

deal.II currently only requires a C++11-conforming compiler, but there are a number of functions and classes from the C++14 standard that are easy to provide also in case the compiler only supports C++11. These are collected in the current namespace.

The most notable example is the std::make_unique function which is arguably an oversight for not having been included in C++11 (given that there is std::make_shared in C++11).

There are other small additions in this namespace that allow us to use C++14 features at this point already, even though we don't require a C++14-compliant compiler.

Note
If the compiler in use actually does support C++14, then the contents of this namespace are simply imported classes and functions from namespace std. That is, we fall back to what the compiler provides, rather than our own implementations.