民國107年 第2梯次 電腦軟體設計(C++)乙級 學科
第47題
C++ 語言抽象類別的虛擬函式(Virtual Function)會使用以下那ㄧ個修飾子?
題目
C++ 語言抽象類別的虛擬函式(Virtual Function)會使用以下那ㄧ個修飾子?
- (1) public
- (2) priv ate
- (3) fn ent
- (4) package
官方答案
(1) public
解析
C++ 虛擬函式以 virtual 關鍵字宣告。在抽象類別中,純虛擬函式(如 virtual void f()=0;)通常設為 public(或 protected),目的在讓衍生類別能夠覆寫(override),並使外界能透過基底類別指標進行多型呼叫。若設為 private 會阻礙外部透過基底指標呼叫,失去多型意義。friend(題面誤植為 fn ent)與 package 均非 C++ 的虛擬函式修飾子,package 屬 Java 概念。故在給定選項中,public 最符合抽象類別虛擬函式對外開放覆寫的設計慣例,選 1。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。