namespace cpp

C++ lernen, kennen, anwenden

Benutzer-Werkzeuge

Webseiten-Werkzeuge


kennen:lib:get_temporary_buffer

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

kennen:lib:get_temporary_buffer [2016-11-19 19:01] (aktuell)
Zeile 1: Zeile 1:
 +====== get_temporary_buffer() ======
 +''#​include''​ [[..:​include:​memory]]
 +
 +<code cpp>
 +template <class T> pair<T*, ptr_diff_t>​ get_temporary_buffer (ptr_diff_t n) // geächtet in C++17
 +</​code>​
 + ​Besorgt einen Speicherbereich,​ der groß genug ist, ''​n''​ Objekte vom Typ ''​T''​ aufzunehmen.
 + Der Speicher wird jedoch nicht initialisiert.
 +
 +==== Parameter ====
 +| ''​n''​ | Anzahl der aufzunehmenden Elemente |
 +==== Ergebnis ====
 +Rückgabewert:​ [[..:​stl#​paare|Paar]] mit dem Zeiger auf den Speicherbereich
 +und der Kapazität in Einheiten von ''​sizeof(T)''​
 +oder ein Paar aus Nullwerten, wenn kein Speicher bereitgestellt werden kann.
 +
 +==== Siehe auch ====
 +[[return_temporary_buffer]].
 +
 +==== Beispiel ====
 +<code cpp get_temporary_buffer.cpp>​
 +#include <​memory>​
 +#include <​include>​
 +
 +int main()
 +{
 +  std::​pair<​int*,​ ptr_diff_t>​ puffer = std::​get_temporary_buffer<​int>​(200);​
 +
 +  if (puffer.first)
 +  {
 +    std::cout << puffer.second << " Werte speicherbar\n";  ​
 +    // ...
 +    std::​return_temporary_buffer(puffer.first); ​  
 +  }
 +  else
 +  {
 +    std::cerr << "Nicht genug Speicher\n";​
 +  } 
 +  return 0;
 +}
 +</​code>​
  
kennen/lib/get_temporary_buffer.txt · Zuletzt geändert: 2016-11-19 19:01 (Externe Bearbeitung)