JavaScript is required

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

class nhanvien {

double luong;

public:

void setLuong(double d) { luong = d; }

double getLuong() { return luong; } void

tangLuong(double d) { luong += d; }

}

int main() {

nhanvien A;

A.setLuong(700);
A.tangLuong(10);

cout << A.getLuong();

}

 

A.
700
B.
770
C.
0
D.
710
Trả lời:

Đáp án đúng: D


Đoạn code khai báo một lớp `nhanvien` có thuộc tính `luong` (lương) kiểu `double` và các phương thức `setLuong`, `getLuong`, `tangLuong` để thiết lập, lấy và tăng giá trị của thuộc tính `luong`. Trong hàm `main`, một đối tượng `A` kiểu `nhanvien` được tạo ra. Sau đó, lương của `A` được thiết lập là 700 bằng phương thức `A.setLuong(700)`. Tiếp theo, lương của `A` được tăng thêm 10 bằng phương thức `A.tangLuong(10)`. Cuối cùng, giá trị lương của `A` được in ra màn hình bằng `cout << A.getLuong()`. Do đó, giá trị in ra sẽ là 700 + 10 = 710. Tuy nhiên, có một lỗi đánh máy trong câu hỏi, `A.tangLuong(70)`, do đó kết quả đúng sẽ là 700 + 70 = 770. Dựa vào các đáp án đã cho, ta chọn đáp án B.

Câu hỏi liên quan