std::get_temporary_buffer
Aus cppreference.com
![]() |
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
definiert in Header <memory>
|
||
template< class T > std::pair< T*, std::ptrdiff_t > get_temporary_buffer( std::ptrdiff_t count ) |
||
Weist Speicher ausreichen, um bis zu
count
angrenzenden Objekte vom Typ T
. Wenn es nicht genügend Speicher für alle count
Objekte, weist weniger als count
, wenn möglich .Original:
Allocates storage sufficient to store up to
count
adjacent objects of type T
. If there is insufficient memory for all count
objects, allocates less than count
, if possible.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Inhaltsverzeichnis |
[Bearbeiten] Parameter
count | - | die Anzahl der Objekte zu verteilen
Original: the number of objects to allocate The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[Bearbeiten] Rückgabewert
Ein std::pair einen Zeiger auf den Beginn des zugewiesenen Speicher und der Anzahl von Objekten, die in der Speichereinheit, die tatsächlich zugewiesen war passen (Null sein kann) .
Original:
An std::pair holding a pointer to the beginning of the allocated storage and the number of objects that fit in the storage that was actually allocated (may be zero).
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[Bearbeiten] Ausnahmen
[Bearbeiten] Beispiel
#include <algorithm> #include <iostream> #include <memory> #include <string> int main() { const std::string s[] = {"string", "1", "test", "..."}; std::string* p = std::get_temporary_buffer<std::string>(4).first; std::copy(std::begin(s), std::end(s), std::raw_storage_iterator<std::string*, std::string>(p)); for (std::string* i = p; i != p+4; ++i) { std::cout << *i << '\n'; i->~basic_string<char>(); } std::return_temporary_buffer(p); }
Output:
string 1 test ...
[Bearbeiten] Siehe auch
gibt den nicht initialisierten, temporären Speicher (get_temporary_buffer ) frei (Funktions-Template) |