C++ vector::max_size() 函式



C++ vector::max_size() 函式返回向量允許的最大元素數量。容器絕不保證能夠達到該大小:在達到該大小之前,在任何時候分配儲存都可能失敗。它返回向量可能達到的最大潛在大小,這是由於已知的系統或庫實現限制造成的。max_size() 的時間複雜度是常數。

語法

以下是 C++ vector::max_size() 函式的語法:

size_type max_size() const noexcept;

引數

它不接受任何引數。

示例 1

讓我們考慮以下示例,我們將使用 max_size() 函式。

#include <iostream>
#include <vector>

int main (){
   std::vector<int> tutorial;
   for (int i=1; i<15; i++) tutorial.push_back(i);
      std::cout << "size: " << tutorial.size() << "\n";
      std::cout << "capacity: " << tutorial.capacity() << "\n";
      std::cout << "max_size: " << tutorial.max_size() << "\n";
   return 0;
}

輸出

當我們編譯並執行上述程式時,將產生以下結果:

size: 14
capacity: 16
max_size: 2305843009213693951

示例 2

考慮另一種情況,我們將使用 push_back() 函式插入元素並應用 max_size() 函式。

#include <iostream>
#include <vector>
using namespace std;

int main(){
   vector<int> myvector;
   myvector.push_back(11);
   myvector.push_back(22);
   myvector.push_back(33);
   myvector.push_back(44);
   cout << "Max_size(): ";
   cout << myvector.max_size() << endl;
   return 0;
}

輸出

執行上述程式後,將產生以下結果:

Max_size(): 2305843009213693951

示例 3

在以下示例中,我們將對給定的向量應用 max_size() 函式。

#include <iostream>  
#include<vector>  
using namespace std;
  
int main(){  
   vector<int> myvector{111,222,333,444,555};  
   std::cout<<myvector.max_size() <<std::endl;  
   return 0;  
}

輸出

執行上述程式後,將產生以下結果:

2305843009213693951
廣告