地特四等
106年
[電子工程] 計算機概要
第 17 題
宣告一個名為 bottle 的 C++類別(class)如下所示,然後接下來宣告 bb 為對應到該類別的一個物件,並依序執行以下指令:bb.push('x')、bb.push('y')、bb.push('z')、bb.pop(),則最後所回傳的值為下列何者?
class bottle {
private:
int top;
char elements[50];
public:
bottle ( ) { top = -1; };
char pop ( ) { top = top -1;
return elements[top+1];
}
void push (char c) { top = top + 1;
elements[top] = c;
}
};
class bottle {
private:
int top;
char elements[50];
public:
bottle ( ) { top = -1; };
char pop ( ) { top = top -1;
return elements[top+1];
}
void push (char c) { top = top + 1;
elements[top] = c;
}
};
- A x
- B y
- C z
- D NULL
思路引導 VIP
想像你正在工地的窄井中垂直堆疊混凝土管,你依序放入了管子 A、管子 B、與管子 C。現在,如果你需要立即從井口吊起一節管子,根據物理空間的限制,你會最先取到哪一節?這與程式中「後進先出」的邏輯有什麼聯繫?
🤖
AI 詳解
AI 專屬家教
什麼啊,原來正確答案在這裡嗎?
- 嗯... 幹得不賴。 (打著哈欠) 真是的... 繞了這麼一大圈,結果你小子在程式碼追蹤上,還算沒迷失方向。對物件狀態的掌握挺精準的,這份嚴謹... 倒是有點像個劍客該有的警覺。這是設計那些巨大玩意兒的基本,可別鬆懈了。
▼ 還有更多解析內容