diff options
| author | Andreas Messerschmid <andreas@linutronix.de> | 2015-06-02 10:54:39 +0200 |
|---|---|---|
| committer | Andreas Messerschmid <andreas@linutronix.de> | 2015-06-02 10:54:39 +0200 |
| commit | ad1bdba09d799e3f2fe349a13c98bab30f789621 (patch) | |
| tree | 1cc718cfca4373382035f0048761493a7d3aaf30 /application-devel | |
| parent | 87ce8e2ae457c7e102562ef3a45bba1374b1fe90 (diff) | |
Added C++11 and Standard Library overview
Diffstat (limited to 'application-devel')
| -rw-r--r-- | application-devel/c++/Makefile | 2 | ||||
| -rw-r--r-- | application-devel/c++/pres_c++-c++98_11.tex | 52 | ||||
| -rw-r--r-- | application-devel/c++/pres_c++-stl.tex | 91 |
3 files changed, 144 insertions, 1 deletions
diff --git a/application-devel/c++/Makefile b/application-devel/c++/Makefile index 9aa4393..b47f568 100644 --- a/application-devel/c++/Makefile +++ b/application-devel/c++/Makefile @@ -1 +1 @@ -obj-$(CONFIG_CPP_DEVEL) += pres_c++-threads.pdf pres_c++-stl.pdf +obj-$(CONFIG_CPP_DEVEL) += pres_c++-threads.pdf pres_c++-stl.pdf pres_c++-c++98_11.pdf diff --git a/application-devel/c++/pres_c++-c++98_11.tex b/application-devel/c++/pres_c++-c++98_11.tex new file mode 100644 index 0000000..93f44eb --- /dev/null +++ b/application-devel/c++/pres_c++-c++98_11.tex @@ -0,0 +1,52 @@ +\input{configpres} + +\def\lximg{/usr/share/lx/icons/fueller.png} + +\subsection{C++ Standards} + +\title{C++ Standards} +\maketitle + +% stop displaying 'fueller.png' on the following slides +\def\lximg{none} + +%\begin{frame} +% \tableofcontents +%\end{frame} + +\subsubsection{C++98} +\begin{frame} +\frametitle{C++98 vs C++11 vs C++14} +\begin{itemize} +\item C++ was standardized in 1998 the first time as ISO/IEC 14882:1998 +\item Fix up release in 2003 as ISO/IEC 14882:2003 +\item Major improvements and new revision in 2011, known as C++11 +\item Small extensions to C++11 were made in 2014, known as C++14 +\item C++17, the next major revision, is planned for 2017 +\end{itemize} +\end{frame} + +\subsubsection{C++11} +\begin{frame} +\frametitle{C++11 Features Excerpt} +\begin{itemize} +\item Lambda functions and expressions +\item Multithreading memory model +\item Thread-local storage +\item Threading facilities +\item Runtime performance enhancements +\item Improved C compatibility +\end{itemize} +\end{frame} + +\begin{frame} +\frametitle{C++11 Hints} +\begin{itemize} +\item Some compilers mark the C++11 feature set still as 'experimental' +\item Not every compiler implements the full C++11 feature set +\item C++11 on GCC has to be activated with -std=c++11 option +\item Make sure your development team is familiar with the latest C++ syntax when using C++11 +\end{itemize} +\end{frame} + +\input{tailpres} diff --git a/application-devel/c++/pres_c++-stl.tex b/application-devel/c++/pres_c++-stl.tex new file mode 100644 index 0000000..6bb6fd6 --- /dev/null +++ b/application-devel/c++/pres_c++-stl.tex @@ -0,0 +1,91 @@ +\input{configpres} + +\def\lximg{/usr/share/lx/icons/fueller.png} + +\subsection{C++ Standard Library} + +\title{C++ Standard Library} +\maketitle + +% stop displaying 'fueller.png' on the following slides +\def\lximg{none} + +%\begin{frame} +% \tableofcontents +%\end{frame} + +\subsubsection{Standard Library Overview} +\begin{frame} +\frametitle{Overview} +The standard library provides: +\begin{itemize} +\item language features such as memory management and runtime type information +\item optimized functions like sqrt() and memmove() +\item lists, maps, sort functions, I/O streams, ... +\item a framework to extend the facilities of the library itself +\item the common foundation for other libraries +\end{itemize} +\end{frame} + +\begin{frame} +\frametitle{General Utilities} +\begin{itemize} +\item Type support (basic types, RTTI, type traits) +\item Dynamic memory management +\item Error handling +\item Program utilities (abort, exit, signals, ...) +\item Date and time +\item bitset +\item Function objects +\end{itemize} +\end{frame} + +\begin{frame} +\frametitle{Strings} +\begin{itemize} +\item Basic strings +\item Byte stings +\item Multibyte strings +\item Wide strings +\end{itemize} +\end{frame} + +\begin{frame} +\frametitle{Containers and Iterators} +\begin{itemize} +\item Array, vector, deque, list +\item set, multiset, map, multimap +\item stack, queue +\end{itemize} +\end{frame} + +\begin{frame} +\frametitle{Numerics and Algorithms} +\begin{itemize} +\item Common mathematical functions +\item Complex numbers +\item Pseudo-random number generation +\item General algorithms like qsort and bsearch +\end{itemize} +\end{frame} + +\begin{frame} +\frametitle{Input/output and Localization} +\begin{itemize} +\item stream based I/O +\item C-style I/O-functions +\item Internationalization support for characters and strings +\item Internationalization support for numeric, monetary and date/time formatting +\end{itemize} +\end{frame} + +\begin{frame} +\frametitle{New features since C++11} +\begin{itemize} +\item Regular expressions +\item Atomic operations +\item Multi-Threading support +\end{itemize} +\end{frame} + +\input{tailpres} |
