Computer >> Máy Tính >  >> Lập trình >> C ++

Danh sách ::clear () trong C ++ STL

Trong bài viết này, chúng ta sẽ thảo luận về cách làm việc, cú pháp và các ví dụ của hàm list ::clear () trong C ++.

Danh sách trong STL là gì?

Danh sách là một cấu trúc dữ liệu cho phép chèn và xóa theo thời gian liên tục ở bất kỳ đâu theo trình tự. Danh sách được triển khai dưới dạng danh sách được liên kết kép. Danh sách cho phép phân bổ bộ nhớ không liền kề. Danh sách thực hiện trích xuất chèn và di chuyển phần tử ở bất kỳ vị trí nào trong vùng chứa tốt hơn so với mảng, vectơ và deque. Trong Danh sách, truy cập trực tiếp vào phần tử chậm và danh sách tương tự như forward_list, nhưng các đối tượng danh sách chuyển tiếp là danh sách được liên kết đơn và chúng chỉ có thể được lặp lại về phía trước.

cle () là gì?

list ::clear () là một hàm có sẵn trong C ++ STL được khai báo trong tệp tiêu đề. list ::clear (), xóa toàn bộ danh sách. Nói cách khác, clear () loại bỏ tất cả các phần tử có trong vùng chứa danh sách và để lại vùng chứa có kích thước bằng 0.

Cú pháp

 list_name.clear (); 

Hàm này không chấp nhận tham số.

Giá trị trả lại

Hàm này không trả về gì, chỉ xóa tất cả các phần tử khỏi vùng chứa.

Ví dụ

Trong đoạn mã dưới đây, chúng tôi sẽ chèn các phần tử vào danh sách và sau đó, chúng tôi sẽ áp dụng chức năng xóa để xóa toàn bộ danh sách làm cho nó trống.

 #include  #include  using namespace std; int main () {list  myList ={10, 20, 30, 40, 50}; cout <<"Danh sách trước khi áp dụng hàm clear ()"; for (auto i =myList.begin (); i! =myList.end (); ++ i) cout <<'' <<* i; // áp dụng hàm clear () để xóa danh sách myList.clear (); for (auto i =myList.begin (); i! =myList.end (); ++ i) cout <<'' <<* i; cout <<"\ ndanh sách bị xóa"; trả về 0;} 

Đầu ra

Nếu chúng ta chạy đoạn mã trên thì nó sẽ tạo ra kết quả sau

 Danh sách trước khi áp dụng hàm clear () 10 20 30 40 50 danh sách được xóa 

Ví dụ

Trong đoạn mã dưới đây, chúng tôi sẽ xóa toàn bộ danh sách bằng cách sử dụng hàm clear () và sau đó, chúng tôi sẽ chèn lại các phần tử mới vào danh sách và hiển thị như cũ.

 #include  #include  using namespace std; int main () {list  myList; std ::list  ::iterator i; myList.push_back (10); myList.push_back (20); myList.push_back (30); cout <<"Danh sách trước khi áp dụng hàm clear ()"; for (auto i =myList.begin (); i! =myList.end (); ++ i) cout <<'' <<* i; myList.clear (); for (auto i =myList.begin (); i! =myList.end (); ++ i) cout <<'' <<* i; cout <<"\ ndanh sách bị xóa"; myList.push_back (60); myList.push_back (70); cout <<"\ nelements trong danh sách của tôi là:"; for (auto i =myList.begin (); i! =myList.end (); ++ i) cout <<'' <<* i; trả về 0;} 

Nếu chúng ta chạy đoạn mã trên thì nó sẽ tạo ra kết quả sau

 Danh sách trước khi áp dụng hàm clear () 10 20 30 40 50 danh sách được xóa