JavaScript is required

Giả sử có đoạn mã code được viết như sau: 

class Lopl

{

public:

int a,b;
void nhap()

{

cout«"\n\t a = ";cin»a;
cout«"\n\t b =";cin»b;

}

};

class Lop2: public Lopl

{

public:

Lopl p;

};

Khi khai báo Đối tượng objLop2 cho Lop2 thì nó có thể truy xuất thủ tục nhập của lớp 1 bằng cú pháp nào sau đây là đúng nhất?

A.

objLop2.nhap{)
objLop2.p.nhap()

B.

objLop2.nhap()

C.

objLop2.p ^nhap()

D.

Tất cả đều sai

Trả lời:

Đáp án đúng: A


Lớp `Lop2` kế thừa từ lớp `Lopl` theo kiểu `public`, điều này có nghĩa là tất cả các thành viên `public` của `Lopl` vẫn là `public` trong `Lop2`. Do đó, đối tượng `objLop2` của lớp `Lop2` có thể trực tiếp truy cập các thành viên `public` của `Lopl`, bao gồm cả hàm `nhap()`. Phương án 1 có vẻ đúng nhưng không hoàn toàn tối ưu. Phương án 3 sai vì toán tử `^` không được sử dụng để truy cập thành viên của lớp. Vì vậy, phương án đúng nhất là objLop2.nhap().

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