Cách sử dụng vector trong C++

Cách sử dụng Vector dành cho newbie trong lập trình C++

Vector thực ra nó cũng như mảng vậy nhưng cách sử dụng thì linh hoạt hơn nhiều và đây là 1 số điểm nổi trội của vector so với mảng

- Bạn không cần phải khai báo kích thước của mảng ví dụ int A[100]..., vector có thể tự động nâng kích thước lên.

- Nếu bạn thêm 1 phần tử vào vector đã đầy rồi, thì vector sẽ tự động tăng kích thước của nó lên để dành chỗ cho giá trị mới này.

- Vector còn có thể cho bạn biết số lượng các phần tử mà bạn đang lưu trong nó.

- Dùng số phần tử âm vẫn được trong vector ví dụ A-10], A[-3], rất tiện trong việc cài đặt các giải thuật.

Cách dùng vector

Để có thể sử dụng vectors thì bạn phải thêm cho nó 1 header file sau :

#include

và phải có

using namespace std

Vì vector bản chất là thuộc STL( Standard Template Library).

Cú pháp

Cú pháp của vector cũng rất đơn giản ví dụ :

vector A ;

Câu lệnh trên định nghĩa 1 vector có kiểu int. Chú ý kiểu của vector được để trong 2 cái ngoặc nhọn. Vì kíck thước của vector có thể nâng lên, cho nên không cần khai báo cho nó có bao nhiêu phần tử cũng được, hoặc nếu thích khai báo thì bạn cũng có thể khai báo như sau :

vector A(10);

Câu lệnh trên khai báo A là 1 vector kiểu int có 10 phần tử. Tuy nhiên như đã nói ở trên, mặc dù size = 10, nhưng khi bạn add vào thì nó vẫn cho phép như thường.

Và ta cũng có thể khởi tạo cho các phần tử trong vector bằng cú pháp đơn giản như sau:

vector A(10, 2);

Trong câu lệnh trên thì 10 phần tử của vector A sẽ được khởi tạo bằng 2.

Đồng thời ta cũng có thể khởi tạo cho 1 vector bằng giá trị của 1 vector khác, ví dụ:

vector A(10,2);

vector B(A);

Với dòng lệnh trên thì vector B sẽ là bản sao của vector A.

Một số ví dụ về khai báo vector :

vector A;

vector B(15);

vector C(25, 'A');

Cách sử dụng hàm thành viên của vector "push_back"

Chú ý bạn không thể dùng toán tử [] để truy xuất các phần tử mà nó không tồn tại, nghĩa là ví dụ vector size = 10, mà bạn truy xuất 11 là banh xác. Để thêm vào 1 giá trị cho vector mà nó không có size trước hoặc đã full thì ta dùng hàm thành viên "push_back". Ví dụ :

A.push_back(25);

Với câu lệnh trên thì giả sử ta đang có 1 vector A kiểu int, với size bao nhiêu đó, nếu nó chưa full thì 25 sẽ thay cho phần tử cuối cùng. Còn nếu không full thì nó sẽ tạo 1 chỗ mới dành cho 25 này.

Xác định kíck thước của vector thông qua hàm size():

Không giống với mảng, dùng vector ta có thể thông báo được kíck thước hiện thời mà nó đang có với cú pháp cực kì đơn giản như sau :

int numberValues = A.size()

Xoá 1 phần tử trong vector bằng hàm thành viên pop_back

Cú pháp cũng đơn giản như sau :

A.pop_back();

Dùng hàm thành viên clear() để xoá sạch sẽ các phần tử của vector

Nếu muốn diệt cỏ tận gốc thì dùng hàm clear với cú pháp như sau :

A.clear();

Dùng hàm thành viên empty() để kiểm tra xem vector có rỗng hay không

Để xác định vector có rỗng hay không ta dùng hàm thành viên empty(), hàm này trả về true nếu vector rỗng, và false ngược lại. Cú pháp :

if(A.empty() == true){

cout << "No values in A \n";

}

Trong bài viết này đã nêu nên cách sử dụng vector trong lập trình C++ sao cho đơn giản và dễ hiểu nhất. Mặc dù rất cơ bản và hầu như ai học về lập trình cũng đã từng được học hoặc đọc nhưng hy vọng bài viết này sẽ mang đến một điều gì đó dễ dàng tiếp cận hơn cho các bạn, nhất là những bạn mới tiếp cận lập trình.

Nếu bạn đam mê lập trình thì khóa học C/C++ cơ bản chính là bước đệm để học tiếp các ngôn ngữ khác như Java, JavaScript và C#.

Hiện tại, Stanford đang tuyển sinh khóa học lập trình C/C++, ngày dự kiến khai giảng là ngày 11/03/2016. Cơ hội để đăng ký học và nhận ưu đãi hấp dẫn vẫn còn cho bạn nhanh tay nhất. Quyết định ngay, học luôn, đi làm ngay sau khi hoàn thành khóa học. Gọi ngay tới hotline: 0963.723.236; 024.6275 2212 - 024.6662 3355 hoặc truy cập stanford.com.vn để biết thêm thông tin về khóa học và đăng ký ngay bạn nhé!

Ngay từ bây giờ, bạn cũng có thể đăng ký học lập trình C/C++ cơ bản tại đây

Sưu tầm và Tổng hợp

Nhật Lệ (Stanford - Nâng tầm tri thức)

Tags: học lập trình c, khóa học c, học c hiệu quả