namespace cpp

C++ lernen, kennen, anwenden

Benutzer-Werkzeuge

Webseiten-Werkzeuge


kennen:include:memory

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

kennen:include:memory [2016-11-19 19:07] (aktuell)
Zeile 1: Zeile 1:
 +====== <​memory>​ ======
 +===== Klassen =====
 +<code cpp>
 +template <class T, class Deleter> shared_ptr ​
 +</​code>​
 +[[..:​lib:​shared_ptr|Beschreibung]]:​
 + ​Intelligenter Zeiger mit referenzzählender Semantik.
 +
 +<code cpp>
 +template <class T, class Deleter> unique_ptr ​
 +</​code>​
 +[[..:​lib:​unique_ptr|Beschreibung]]:​
 + ​Intelligenter Zeiger mit Verschiebe-Semantik.
 +
 +<code cpp>
 +template <class T> weak_ptr ​
 +</​code>​
 +[[..:​lib:​weak_ptr|Beschreibung]]:​
 + ​Intelligenter Zeiger mit referenzzählender Semantik ohne Besitzeigenschaft.
 +
 +<code cpp>
 +template <class T> auto_ptr ​
 +</​code>​
 + ​Veraltet. Benutze stattdessen ''​std::​unique_ptr<​T>''​.
 +
 +
 +===== Funktionen =====
 +<code cpp>
 +template <class T, class... Args> std::​shared_ptr<​T>​ make_shared (Args&&​ args...) ​
 +</​code>​
 +[[..:​lib:​shared_ptr|Beschreibung]]:​
 + ​Liefert referenzzählenden Zeiger auf ein neues dynamisches Objekt vom Typ T, 
 + das mit den übernommenen Argumenten initialisiert wird. 
 +
 +<code cpp>
 +template <class T, class... Args> std::​shared_ptr<​T>​ make_unique (Args&&​ args...) ​
 +</​code>​
 +[[..:​lib:​unique_ptr|Beschreibung]]:​
 + ​Liefert einen besitzverwaltenden Zeiger mit Verschiebesemantik auf ein neues dynamisches Objekt vom Typ T, 
 + das mit den übernommenen Argumenten initialisiert wird. 
 +
 +<code cpp>
 +template<​class U, class T)
 +std::​shared_ptr<​U>​ const_pointer_cast (std::​shared_ptr<​T>​ p) 
 +</​code>​
 +[[..:​lib:​const_pointer_cast|Beschreibung]]:​
 + ​Liefert referenzzählenden Zeiger auf dynamisches Objekt ohne Schreibschutz.
 +
 +<code cpp>
 +template<​class U, class T)
 +std::​shared_ptr<​U>​ dynamic_pointer_cast (std::​shared_ptr<​T>​ p) 
 +</​code>​
 +[[..:​lib:​dynamic_pointer_cast|Beschreibung]]:​
 + ​Liefert referenzzählenden Zeiger auf dynamisches Objekt einer abgeleiteten Klasse (Downcast) oder einen leeren Pointer.
 +
 +<code cpp>
 +template<​class U, class T)
 +std::​shared_ptr<​U>​ static_pointer_cast (std::​shared_ptr<​T>​ p) 
 +</​code>​
 +[[..:​lib:​static_pointer_cast|Beschreibung]]:​
 + ​Liefert referenzzählenden Zeiger eines anderen Typs, verwaltet aber den Speicher mit dem Argument gemeinsam.
 +
 +===== Hilfsfunktionen für Container =====
 +<code cpp>
 +template <class In, class For> ​
 +For uninitialized_copy (In first, In last, For result) ​
 +</​code>​
 +[[..:​lib:​uninitialized_copy|Beschreibung]]:​
 + ​Kopiert alle Objekte des Bereichs [first,​last) in einen Rohspeicherbereich.
 +
 +<code cpp>
 +template <class For, class T> 
 +void uninitialized_fill (For first, For last, const T& x) 
 +</​code>​
 +[[..:​lib:​uninitialized_fill|Beschreibung]]:​
 + ​Füllt den Rohspeicherbereichs [first,​last) mit Kopien von ''​x''​.
 +
 +<code cpp>
 +template <class For, class Size, class T> 
 +void uninitialized_fill_n (For first, Size n, const T& x) 
 +</​code>​
 +[[..:​lib:​uninitialized_fill_n|Beschreibung]]:​
 + ​Füllt den Rohspeicher ab ''​first''​ mit ''​n''​ Kopien von ''​x''​.
  
kennen/include/memory.txt · Zuletzt geändert: 2016-11-19 19:07 (Externe Bearbeitung)