– Các hàm vector:
– Demo các hàm vector:
========= ƯU ĐIỂM =========
1. Vector bản chất là 1 mảng 1 chiều – cụ thể nó là 1 cái mảng động – nó là 1 cái siêu mảng động
+ Vector có thể chứa các kiểu dữ liệu cơ sở(int, float, double, char…) và kiểu dữ liệu do người lập trình định nghĩa – struct…
TẠI SAO NÓ LÀ SIÊU MẢNG ĐỘNG
+ Vector có hết tất cả các tính chất mà mảng 1 chiều(mảng tĩnh và mảng động) và có thêm 1 số tính chất riêng của nó nữa(khắc phục nhược điểm của mảng tĩnh và mảng động)
+ Nếu như chúng ra dùng mảng tĩnh hay mảng động thì KHAI BÁO KÍCH THƯỚC CỦA MẢNG CẦN THAO TÁC TRƯỚC. Còn vector không cần khai báo trước số lượng phần tử cần dùng – bởi vì nó được hỗ trợ cái cơ chế tự động thêm phần tử vào cuối (push_back())
+ Tự động đi giải phóng vùng nhớ khi chương trình kết thúc
+ Các thao tác thêm, xóa , tìm kiếm, sắp xếp bên mảng 1 chiều (mảng tĩnh hay mảng động) thì chúng ta phải đi cài – đặt – còn bên vector nó sẽ hỗ trợ chúng ta các hàm xử lí tương tự

========= KHUYẾT ĐIỂM =========
– Tốn bộ nhớ hơn mảng tĩnh và mảng động(do cơ chế container buộc phải tạo ra thêm các vùng nhớ riêng để quản lí chặt chẽ hơn)

String, Vector, List, Stack, Queue…: thuộc thư viện chuẩn của C++ – STL(Standard Template Library)

Nguồn: https://cachlamtangcan.com

Xem thêm bài viết khác: https://cachlamtangcan.com/tong-hop/

Author

7 Comments

  1. Xóa một phần tử bất kì theo chỉ định của mình thì dùng hàm nào anh. ví dụ xóa sinh viên AAA ra khỏi mảng vector<SinhVien>

  2. Phim Hoa Ngữ Reply

    a ơi cho e hỏi với ạ. Tại sao e code giống hệt như a mà khi chạy chương trình nó lại không chạy được mà nó lại mở ra stl_construct.h vậy ạ?

  3. Harding Adonis Reply

    vector có thể dùng như mảng nhiều chiều được không ạ ???

  4. Phu Tran Huu Reply

    anh dạy rất tốt dể hiểu ,thank anh đả làm video này .hè này anh có dạy khóa nào không e muốn học lắm anh có thể tư vấn cho e được không

  5. CHÍNH HUỲNH Reply

    chi tiết ,rất ok,dễ hiểu, thank anh nhiều

Write A Comment