Chuyển tới nội dung chính

std::set::max_size

#include <set>

size_type max_size() const noexcept;

Trả về số lượng phần tử tối đa mà std::set có thể chứa, phụ thuộc vào giới hạn bộ nhớ của hệ thống hoặc thư viện.

Tham số

Không có tham số

Giá trị trả về

  • Trả về một giá trị kiểu size_type, thường là std::size_t, là một kiểu số nguyên không dấu, đại diện cho số lượng phần tử tối đa mà std::set có thể chứa.

Đặc điểm

  1. Giới hạn lý thuyết: max_size() trả về giới hạn lý thuyết về số lượng phần tử mà std::set có thể chứa. Trên thực tế, bạn có thể bị giới hạn bởi bộ nhớ RAM hoặc các ràng buộc khác của hệ thống trước khi đạt đến max_size().
  2. noexcept: max_size() được đánh dấu là noexcept, nghĩa là nó được đảm bảo không ném ra ngoại lệ nào.
  3. const: max_size() là một hàm const, nghĩa là nó không thay đổi trạng thái của std::set.
  4. Không phụ thuộc vào số phần tử hiện tại: Giá trị trả về của max_size() không phụ thuộc vào số lượng phần tử hiện tại trong std::set, mà phụ thuộc vào giới hạn của hệ thống.
  5. Ít sử dụng trong thực tế: Trong hầu hết các trường hợp, bạn không cần phải lo lắng về max_size(). std::set được thiết kế để tự động quản lý bộ nhớ, và bạn hiếm khi đạt đến giới hạn tối đa này.
  6. Độ phức tạp: O(1) - thời gian hằng số.

Ví dụ

#include <iostream>
#include <set>
#include <limits>

int main() {
std::set<int> myset;

std::cout << "Maximum size of set: " << myset.max_size() << '\n';
std::cout << "Maximum value of size_t: " << std::numeric_limits<std::size_t>::max() << '\n';

return 0;
}

Các hàm liên quan

sizeTrả về số lượng phần tử hiện có trong std::set