JavaScript is required

Trong khai báo lớp Đa thức(DT) dưới đây bằng C++:

class DT {
private:
int m;//bac cua da thuc
float *a;//Cac he so cua da thuc
public:
};
Bắt buôc phải xây dựng:

A.

Hàm tạo

B.

Hàm hủy

C.

Hàm tạo sao chép

D.

Tất cả các hàm trên

Trả lời:

Đáp án đúng: D


Lớp Đa thức (DT) có một con trỏ `float *a` để lưu trữ các hệ số của đa thức. Khi một lớp chứa con trỏ đến vùng nhớ được cấp phát động, việc quản lý bộ nhớ trở nên rất quan trọng để tránh rò rỉ bộ nhớ và các lỗi liên quan đến bộ nhớ. Do đó, cần thiết phải xây dựng: - **Hàm tạo:** Để khởi tạo các thành viên dữ liệu của lớp, đặc biệt là cấp phát bộ nhớ cho mảng `a` nếu cần thiết. - **Hàm hủy:** Để giải phóng bộ nhớ đã cấp phát cho mảng `a` khi đối tượng không còn được sử dụng, ngăn ngừa rò rỉ bộ nhớ. - **Hàm tạo sao chép:** Để tạo một bản sao độc lập của đối tượng, bao gồm việc cấp phát bộ nhớ mới và sao chép các giá trị từ đối tượng gốc sang đối tượng mới. Nếu không có hàm tạo sao chép, việc sao chép đối tượng sẽ chỉ sao chép con trỏ `a`, dẫn đến hai đối tượng cùng trỏ đến cùng một vùng nhớ. Khi một trong hai đối tượng bị hủy, vùng nhớ này sẽ bị giải phóng, và đối tượng còn lại sẽ trỏ đến một vùng nhớ không hợp lệ. Vì vậy, đáp án đúng là "Tất cả các hàm trên".

Cùng ôn thi với bộ câu hỏi trắc nghiệm môn Lập trình hướng đối tượng có đáp án mà tracnghiem.net chia sẽ dưới đây, nhằm giúp các bạn sinh viên chuyên ngành chuẩn bị cho kì thi sắp tới.


50 câu hỏi 60 phút

Câu hỏi liên quan