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

Ưu điểm của vector so với mảng trong C ++?

Vector là một lớp mẫu và chỉ là cấu trúc C ++ trong khi mảng là cấu trúc ngôn ngữ tích hợp sẵn và có trong cả C và C ++.

Vectơ được triển khai dưới dạng mảng động với giao diện danh sách trong khi mảng có thể được triển khai dưới dạng tĩnh hoặc động với giao diện kiểu dữ liệu nguyên thủy.

Sự khác biệt giữa Vectơ và Mảng

  • Vectơ là một mảng động, có thể tăng kích thước của nó, trong khi kích thước mảng KHÔNG thể thay đổi.

  • Không gian dự trữ có thể được cấp cho vectơ, trong khi đối với mảng, bạn không thể cấp không gian dự trữ.

  • Vectơ là một lớp trong khi một mảng là một kiểu dữ liệu.

  • Vectơ có thể lưu trữ bất kỳ loại đối tượng nào, trong khi một mảng chỉ có thể lưu trữ các giá trị đồng nhất.

Ưu điểm của Mảng

  • Mảng hỗ trợ truy cập ngẫu nhiên hiệu quả vào các thành viên.

  • Thật dễ dàng để sắp xếp một mảng.

  • Chúng thích hợp hơn để lưu trữ một số phần tử cố định

Nhược điểm của Mảng

  • Không thể xóa các phần tử

  • Không thể tạo động các mảng

  • Không thể lưu trữ nhiều loại dữ liệu

Ưu điểm của Vector

  • Kích thước của vectơ có thể được thay đổi

  • Nhiều đối tượng có thể được lưu trữ

  • Có thể xóa các phần tử khỏi vectơ

Nhược điểm của Vector

  • Vectơ là một đối tượng, tiêu thụ bộ nhớ nhiều hơn.