Lấy và thay đổi kích thước của list trong C++ (size, resize) | Laptrinhcanban.com

Lấy và thay đổi kích thước của list trong C++ (size, resize)

Hướng dẫn cách lấy và thay đổi kích thước list trong C++. Bạn sẽ học được cách dùng hàm size và hàm resize để lấy kích thước cũng như thay đổi kích thước của list trong C++ sau bài học này.

Lấy kích thước list trong C++ bằng hàm size

Hàm size là một hàm thành viên trong class std:list, có tác dụng lấy kích thước list trong C++ dưới dạng số phần tử có trong list đó.

Cú pháp của hàm size trong C++ như sau:

lst.size();

Trong đó lst là list cần kiểm tra.

Hàm size sẽ trả về kích thước của list, cũng chính là số phần tử có trong list đó.

Ví dụ cụ thể, chúng ta lấy kích thước list trong C++ bằng hàm size như sau:

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

int main ()
{
list<int> lst{3, 1, 4,5};
cout<<lst.size()<<endl;
return 0;
}

Kết quả:

4

Thay đổi kích thước list trong C++ bằng hàm resize

Hàm resize là một hàm thành viên trong class std:list, có tác dụng thay đổi kích thước ban đầu của list trong C++.

Cú pháp của hàm resize trong C++ như sau:

lst.resize(n);

Trong đó lst là list cần thay đổi kích thước, và n là kích thước cần thay đổi.

Nếu n nhỏ hơn kích thước(số phần tử) ban đầu của list thì các phần tử bị thừa sẽ bị xóa đi.

Ngược lại nếu n lớn hơn kích thước(số phần tử) ban đầu của list, các giá trị mặc định tùy thuộc vào kiểu dữ liệu sẽ được thêm vào list cho đủ độ dài. Ví dụ nếu list thuộc kiểu số như int hay double thì số 0 sẽ được thêm vào. Còn nếu list thuộc kiểu chữ như char hay string, giá trị trống sẽ được thêm vào.

Ví dụ cụ thể, chúng ta thay đổi kích thước list trong C++ bằng hàm size như sau:

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

//Tạo hàm xuất list
void dump(list<int>& v)
{
for (auto x: v) {
cout << " "<< x ;
}
cout << endl;
}

int main ()
{
list<int> lst{3, 1, 4,5};
dump(lst);
cout<< "Size before: "<<lst.size()<<endl;

/*Thay đổi kích thước nhỏ hơn ban đầu*/
lst.resize(2);
dump(lst);
cout<< "Size after: "<<lst.size()<<endl;

/*Thay đổi kích thước lớn hơn ban đầu*/
lst.resize(10);
dump(lst);
cout<< "Size after: "<<lst.size()<<endl;
return 0;
}

Kết quả:

 3 1 4 5
Size before: 4
3 1
Size after: 2
3 1 0 0 0 0 0 0 0 0
Size after: 10

Tổng kết

Trên đây Kiyoshi đã hướng dẫn bạn về cách lấy và thay đổi kích thước của list trong C++ rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về C++ trong các bài học tiếp theo.

Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!

HOME>> >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.