Aracılığıyla paylaş


basic_string::reserve

Dize kapasitesini en az belirtilen sayı kadar mükemmel bir sayıya ayarlar.

void reserve(
    size_type _Count = 0
);

Parametreler

  • _Count
    Bellek kendisi için ayrılan karakter sayısı.

Notlar

Yeterli kapasiteye sahip olmak önemlidir, çünkü adetle sınırla bir süreçtir ve tüm başvurular, işaretçiler ve karakter dizesindeki başvurmak Yineleyicilerde geçersiz kılar.

Kapasite türü dize nesnelerinin kavramını tür vektör nesneleri ile aynıdır.Vektör, üye işlev aksine rezerve bir nesne kapasitesini daraltmak için çağrılabilir.İstek nonbinding ve olabilir veya değilse oluşabilir.Varsayılan olarak sıfır, çağrı parametresi için değer ise rezerve dizesinde karakter sayısı şu anda sığdırmak için dize kapasitesini daraltmak için bağlama isteğidir.Kapasite altında geçerli karakter sayısı hiçbir zaman azalır.

Arama reserve bir dize kapasitesini daraltmak için yalnızca olası yoldur.Ancak, yukarıda da belirtildiği gibi bu isteği olan nonbinding ve değilse oluşabilir.

Örnek

// basic_string_reserve.cpp
// compile with: /EHsc
#include <string>
#include <iostream>

int main( ) 
{
   using namespace std;
   string str1 ("Hello world");
   cout << "The original string str1 is: " << str1 << endl;

   basic_string <char>::size_type sizeStr1, sizerStr1;
   sizeStr1 = str1.size ( );
   basic_string <char>::size_type capStr1, caprStr1;
   capStr1 = str1.capacity ( );

   // Compare size & capacity of the original string
   cout << "The current size of original string str1 is: " 
        << sizeStr1 << "." << endl;
   cout << "The capacity of original string str1 is: "
        << capStr1 << "." << endl << endl;

   // Compare size & capacity of the string
   // with added capacity
   str1.reserve ( 40 );
   sizerStr1 = str1.size ( );
   caprStr1 = str1.capacity ( );

   cout << "The string str1with augmented capacity is: "
        << str1 << endl;
   cout << "The current size of string str1 is: " 
        << sizerStr1 << "." << endl;
   cout << "The new capacity of string str1 is: "
        << caprStr1 << "." << endl << endl;

   // Compare size & capacity of the string
   // with downsized capacity
   str1.reserve ( );
   basic_string <char>::size_type sizedStr1;
   basic_string <char>::size_type capdStr1;
   sizedStr1 = str1.size ( );
   capdStr1 = str1.capacity ( );

   cout << "The string str1 with downsized capacity is: "
        << str1 << endl;
   cout << "The current size of string str1 is: " 
        << sizedStr1 << "." << endl;
   cout << "The reduced capacity of string str1 is: "
        << capdStr1 << "." << endl << endl;
}
  
  
  
  
  
  

Gereksinimler

Başlık: <string>

Namespace: std

Ayrıca bkz.

Başvuru

basic_string Class