Menu
CoddyTech

Con trỏ và tham chiếu

Bài học 10 trên 14 trong khóa học Con trỏ trong C++ của Coddy.

Như đã trao đổi, trong C++ chúng ta có thể dùng con trỏ và tham chiếu để truy cập các biến khác và giá trị của chúng, nhưng giữa chúng có một vài điểm khác biệt quan trọng.

Con trỏ có thể là null, tức là không trỏ đến đâu cả. Sau khi khai báo, bạn có thể thay đổi đối tượng mà con trỏ trỏ đến.

int a = 10, b = 20;
int *ptr; // Chưa trỏ đến đâu

ptr = &a; // Trỏ đến a
ptr = &b; // Trỏ đến b

Tham chiếu là bí danh của một biến khác. Tham chiếu không thể chưa được khởi tạo (null), cũng không thể không tham chiếu đến đâu cả. Bạn phải khởi tạo tham chiếu khi khai báo và không thể đổi biến mà nó tham chiếu đến.

int a = 10;
    
// Không hợp lệ
int &ref;
    
// Hợp lệ
int &refA = a;

Con trỏ và tham chiếu có một vài điểm khác biệt. Chúng ta dùng cả hai cho những việc khác nhau, nhưng bạn cần biết mình có thể và không thể làm gì với từng loại.

quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

challenge icon

Thử thách

Dễ

Tạo một hàm swapP nhận hai số nguyên làm tham số và dùng con trỏ để hoán đổi giá trị của hai số đã cho, đồng thời tạo một hàm swapR thực hiện tương tự nhưng dùng tham chiếu thay vì con trỏ.

Lưu ý: KHÔNG viết hàm <i>main()</i>

Tự làm thử

#include <iostream>

using namespace std;

void swapP() {}

void swapR() {}


// KHÔNG viết hàm main()

Tất cả bài học trong Con trỏ trong C++

Tự luyện tập: Trình biên dịch C++ online