Trong bài viết này, chúng ta sẽ thảo luận về set::max_size() trong C++ STL, cú pháp, cách hoạt động và giá trị trả về.
Set trong C++ STL là gì?
Set trong C++ STL là container chứa các phần tử duy nhất theo thứ tự chung. Set bắt buộc các phần tử duy nhất vì giá trị của phần tử xác định bản thân phần tử. Một khi đã thêm giá trị vào set container thì sau đó không thể sửa đổi, tuy nhiên vẫn có thể xóa hoặc thêm giá trị vào set. Set được sử dụng như cây tìm kiếm nhị phân.
set::max_size() là gì?
max_size() là hàm built-in trong C++ STL được khai báo trong header <set>. Hàm trả về kích thước tối đa của set container liên kết. Nói cách khác, trả về kích thước tối đa mà container có thể đạt được, tuy nhiên không đảm bảo có thể cấp phát bộ nhớ cho kích thước đó, vẫn có thể thất bại khi cấp phát lưu trữ cho một điểm cụ thể của set container.
Cú pháp
name_of_set.max_size();
Tham số
Hàm không nhận tham số.
Giá trị trả về
Trả về kích thước tối đa của set container liên kết.
Ví dụ
Input: set<int> myset; myset.max_size(); Output: size of a set before inserting elements: 461168601842738790
Ví dụ hoàn chỉnh 1
#include <bits/stdc++.h>
using namespace std;
int main() {
set<int> data_1, data_2;
data_1.insert(100);
cout << "size of a set after inserting values : " << data_1.max_size() << endl;
cout << "size of a set before inserting values : " << data_2.max_size();
return 0;
}
Kết quả
size of a set after inserting values : 461168601842738790 size of a set before inserting values : 461168601842738790
Ví dụ hoàn chỉnh 2
#include <iostream>
#include <set>
int main() {
int i;
std::set<int> Set;
if (Set.max_size() > 1000) {
for (i = 0; i <= 1000; i++)
Set.insert(i);
std::cout << "There are 1000 elements in a set.\n";
} else
std::cout << "There can't be 1000 elements in a set.\n";
return 0;
}
Kết quả
There are 1000 elements in a set.