Cho đoạn chương trình sau:
class Sinh_vien
{
private:
int Masv;
char Hoten[40]
char Ngaysinh;
int gioitinh;
….
};
Để khai báo một mảng gồm 10 sinh viên ta có thể sử dụng câu lệnh khai báo:
class Sinh_vien
{
private:
int Masv;
char Hoten[40]
char Ngaysinh;
int gioitinh;
….
};
Để khai báo một mảng gồm 10 sinh viên ta có thể sử dụng câu lệnh khai báo:
Trả lời:
Đáp án đúng: A
Trong C++, để khai báo một mảng các đối tượng thuộc một lớp (ở đây là lớp `Sinh_vien`), ta sử dụng cú pháp `Ten_lop ten_mang[so_luong_phan_tu];`. Trong trường hợp này, `Sinh_vien ds[10]` sẽ khai báo một mảng `ds` có 10 phần tử, mỗi phần tử là một đối tượng của lớp `Sinh_vien`.
* **Phương án A: `Sinh_vien ds[10]`** - Đây là cách khai báo đúng một mảng gồm 10 đối tượng kiểu `Sinh_vien`.
* **Phương án B: `Sinh_vien ds(10);`** - Đây là cách khai báo không đúng. Cú pháp này giống như gọi một constructor của lớp `Sinh_vien` với tham số là 10, nhưng nó không khai báo một mảng.
* **Phương án C: `Sinh_vien *ds[10]`** - Đây là khai báo một mảng gồm 10 con trỏ, mỗi con trỏ trỏ đến một đối tượng `Sinh_vien`. Tuy nhiên, nó không tạo ra các đối tượng `Sinh_vien` thực sự, mà chỉ tạo ra các con trỏ có thể trỏ đến các đối tượng `Sinh_vien` được tạo ở nơi khác.
* **Phương án D: "Không thể khai báo mảng các đối tượng"** - Đây là một khẳng định sai, vì C++ cho phép khai báo mảng các đối tượng.
Do đó, phương án A là đáp án đúng nhất.
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
