|
1 | 1 | \subsection[More]{More STL} |
2 | 2 |
|
3 | 3 | \begin{frame}[fragile] |
4 | | - \frametitlecpp[17]{\texttt{std::string\_view}} |
| 4 | + \frametitlecpp[17]{\texttt{std::string\_view} \cpprefLink{https://en.cppreference.com/w/cpp/string/basic_string_view}} |
5 | 5 | \begin{block}{Non owning read-only view of a contiguous char sequence} |
6 | 6 | \begin{itemize} |
7 | 7 | \item Doesn't allocate memory |
|
23 | 23 | \end{frame} |
24 | 24 |
|
25 | 25 | \begin{frame}[fragile] |
26 | | - \frametitlecpp[20]{\texttt{std::span<T>} - Concept} |
| 26 | + \frametitlecpp[20]{\texttt{std::span<T>} - Concept \cpprefLink{https://en.cppreference.com/w/cpp/container/span}} |
27 | 27 | \begin{block}{Non owning view of a contiguous sequence of items} |
28 | 28 | \begin{itemize} |
29 | 29 | \item Doesn't allocate memory |
|
85 | 85 | \end{frame} |
86 | 86 |
|
87 | 87 | \begin{frame}[fragile] |
88 | | - \frametitlecpp[17]{std::optional} |
| 88 | + \frametitlecpp[17]{std::optional \cpprefLink{https://en.cppreference.com/w/cpp/utility/optional}} |
89 | 89 | \begin{block}{Manages an optionally contained value} |
90 | 90 | \begin{itemize} |
91 | 91 | \item Contextually converts to bool, telling if it contains something |
|
148 | 148 | \end{frame} |
149 | 149 |
|
150 | 150 | \begin{frame}[fragile] |
151 | | - \frametitlecpp[17]{std::variant} |
| 151 | + \frametitlecpp[17]{std::variant \cpprefLink{https://en.cppreference.com/w/cpp/utility/variant}} |
152 | 152 | \begin{block}{A type-safe union} |
153 | 153 | \begin{itemize} |
154 | 154 | \item Allows the variable to hold any of the given types |
|
176 | 176 |
|
177 | 177 | \begin{frame}[fragile] |
178 | 178 | \frametitlecpp[17]{std::variant and the visitor pattern} |
179 | | - \begin{block}{\texttt{std::visit}} |
| 179 | + \begin{block}{\texttt{std::visit} \cpprefLink{https://en.cppreference.com/w/cpp/utility/variant/visit}} |
180 | 180 | \begin{itemize} |
181 | 181 | \item Applies a ``visitor'' to a given variant |
182 | 182 | \begin{itemize} |
|
185 | 185 | \end{itemize} |
186 | 186 | \end{itemize} |
187 | 187 | \end{block} |
188 | | - \begin{exampleblock}{Practically} |
| 188 | + \begin{exampleblock}{Practically \godboltLink{https://godbolt.org/z/bxzEsM3de}} |
189 | 189 | \small |
190 | 190 | \begin{cppcode*}{gobble=2} |
191 | 191 | struct Visitor { |
|
210 | 210 | \item use inheritance to group a set of lambdas |
211 | 211 | \end{itemize} |
212 | 212 | \end{exampleblock} |
213 | | - \begin{block}{Practically} |
| 213 | + \begin{block}{Practically \godboltLink{https://godbolt.org/z/WcdnT1hra}} |
214 | 214 | \small |
215 | 215 | \begin{cppcode*}{gobble=2} |
216 | 216 | template<typename... Ts> // covered in expert part |
|
242 | 242 | \end{frame} |
243 | 243 |
|
244 | 244 | \begin{frame}[fragile] |
245 | | - \frametitlecpp[17]{std::any} |
| 245 | + \frametitlecpp[17]{std::any \cpprefLink{https://en.cppreference.com/w/cpp/utility/any}} |
246 | 246 | \begin{block}{a type-safe container for single values of any type} |
247 | 247 | \begin{itemize} |
248 | 248 | \item Allows a variable to hold any type (say bye to \mintinline{cpp}{void*}) |
|
296 | 296 | \end{frame} |
297 | 297 |
|
298 | 298 | \begin{frame}[fragile] |
299 | | - \frametitlecpp[11]{\texttt{std::tuple}} |
| 299 | + \frametitlecpp[11]{\texttt{std::tuple} \cpprefLink{https://en.cppreference.com/w/cpp/utility/tuple}} |
300 | 300 | \begin{exampleblock}{} |
301 | 301 | \begin{cppcode*}{} |
302 | 302 | #include <tuple> |
|
0 commit comments