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:
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

FORM.08: Bộ 130+ Biểu Mẫu Thống Kê Trong Doanh Nghiệp

FORM.07: Bộ 125+ Biểu Mẫu Báo Cáo Trong Doanh Nghiệp

FORM.06: Bộ 320+ Biểu Mẫu Hành Chính Thông Dụng

FORM.05: Bộ 330+ Biểu Mẫu Thuế - Kê Khai Thuế Mới Nhất

FORM.04: Bộ 240+ Biểu Mẫu Chứng Từ Kế Toán Thông Dụng
