×

Lấy kích thước vector với phương thức std::vector::size() trong C++

Ngôn ngữ lập trình C++ cung cấp một số thư viện tiêu chuẩn để hỗ trợ các hoạt động với dữ liệu. Trong đó, thư viện <vector> là một trong những thư viện hữu dụng nhất vì nó cung cấp các cấu trúc dữ liệu động, giúp người lập trình dễ dàng quản lý và thao tác với các tập hợp dữ liệu. Phương thức size() của std::vector là một công cụ quan trọng, cho phép chúng ta xác định số lượng phần tử hiện có trong vector.

Hiểu về std::vector

std::vector trong C++ là một container động, mô phỏng một mảng nhưng với tính năng linh hoạt hơn, có khả năng thay đổi kích thước một cách tự động. Khi một phần tử mới được thêm vào, vector sẽ tự động mở rộng để chứa phần tử mới đó. Tương tự, khi phần tử bị xóa, vector có thể co lại để giải phóng không gian bộ nhớ.

Phương thức size()

Phương thức size() là một thành viên của lớp std::vector, trả về kích thước của vector, tức là số lượng phần tử hiện đang được chứa trong vector.

Cú pháp

vector_name.size();

vector_name là tên của vector mà bạn muốn lấy kích thước.

Ví dụ

Dưới đây là một ví dụ minh họa cách sử dụng phương thức này.

#include <iostream>
#include <vector>

int main() {
    std::vector<int> numbers = {1, 2, 3, 4, 5};
    
    // Lấy và in ra kích thước của vector
    std::cout << "Kích thước của vector: " << numbers.size() << std::endl;
    
    // Thêm phần tử mới vào vector
    numbers.push_back(6);
    
    // Lấy và in ra kích thước mới của vector
    std::cout << "Kích thước mới của vector: " << numbers.size() << std::endl;
    
    return 0;
}

Trong ví dụ này:

  1. Chúng ta khởi tạo một vector numbers với 5 phần tử.
  2. Sử dụng phương thức trên để lấy kích thước ban đầu của vector và in ra kết quả.
  3. Thêm một phần tử mới vào vector bằng phương thức push_back.
  4. Lại sử dụng phương thức này để lấy và in ra kích thước mới của vector sau khi đã thêm phần tử.

Ứng dụng thực tế

Biết được kích thước của vector rất hữu ích trong nhiều tình huống lập trình. Ví dụ:

  • Lập vòng lặp để duyệt qua tất cả các phần tử của vector.
  • Kiểm tra xem vector có phần tử nào hay không (vector trống) bằng cách kiểm tra kích thước của nó có bằng 0 hay không.
  • Xác định vị trí hợp lệ trong vector để tránh truy cập ngoài phạm vi (out of bounds).

Một số lưu ý khi sử dụng

  • Hiệu suất: Phương thức này có độ phức tạp là O(1), nghĩa là nó thực thi rất nhanh và không phụ thuộc vào số lượng phần tử trong vector. Lý do là vì kích thước của vector được lưu trữ nội bộ và có thể truy cập trực tiếp.
  • So sánh kích thước: Khi so sánh kích thước của hai vector, đảm bảo rằng cả hai vector đều được cập nhật đúng kích thước sau các thao tác thêm hoặc xóa phần tử.

Kết luận, việc sử dụng phương thức lấy kích thước là một thực hành phổ biến và hữu ích trong lập trình C++. Nó giúp chúng ta quản lý và thao tác với dữ liệu một cách hiệu quả và chính xác, đảm bảo rằng các hoạt động trên vector được thực hiện một cách an toàn và đúng đắn.

Comments