What do you think is the outcome of calling a redefined non-virtual function using a base-class pointer?
Trả lời:
Đáp án đúng: B
Trong C++, khi một hàm không ảo (non-virtual) được định nghĩa lại (redefined) trong lớp con, và hàm này được gọi thông qua con trỏ hoặc tham chiếu kiểu lớp cha, thì phiên bản hàm của lớp cha sẽ luôn được gọi. Điều này được gọi là liên kết tĩnh (static binding) hoặc liên kết sớm (early binding). Trình biên dịch có thể xác định hàm nào sẽ được gọi tại thời điểm biên dịch, dựa trên kiểu của con trỏ hoặc tham chiếu. Do đó, đáp án B là chính xác.