JavaScript is required

Giả sử một lớp với các hàm dựng được khai báo như sau:

class Lop

{

private :

int a,b;
public:

lop ()     // Ham dung 1

{

a ^ b ^ 5;

}

lop (int m, int n) // Ham dung 2

{

a = m; b = n;

}

};

Khi tạo một đối tượng bằng cú pháp Lop   obj Lop;

Thì hàm dựng nào sẽ được gọi

A.

Hàm dựng 1

B.

Hàm dựng 2

C.

Cả 2 hàm dựng đều được gọi

D.

hông hàm dựng nào được gọi

Trả lời:

Đáp án đúng: A


Trong đoạn mã C++ được cung cấp, khi tạo đối tượng `obj` của lớp `Lop` bằng cú pháp `Lop obj;`, trình biên dịch sẽ tìm một hàm dựng không tham số (hoặc có các tham số đều có giá trị mặc định) để khởi tạo đối tượng. Trong trường hợp này, hàm dựng `lop()` (Hàm dựng 1) là hàm dựng không tham số, nên nó sẽ được gọi để khởi tạo đối tượng `obj`. Hàm dựng 2 `lop(int m, int n)` đòi hỏi hai tham số kiểu `int`, do đó nó không phù hợp với cú pháp `Lop obj;`

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