int a = 1000 * 5 / 7; // 714 int b = 1000 * (5 / 7); // 0
1000 * 5 = 5000,5000 / 7 = 714(整數除法截斷)。5 / 7 = 0(整數除法),1000 * 0 = 0。教訓:整數運算中,先乘後除**可保留精度**,先除後乘會導致資訊損失。
需求:A、B、C 三者全真或全假時為真。
String s = "a"; s += "b"; // 實際產生新物件 "ab",原 "a" 待 GC
頻繁拼接請用 StringBuilder。
==:比較基本型別值或參考型別記憶體位址。equals():比較邏輯內容(需類別正確覆寫)。unique_ptr(獨佔)、shared_ptr(共享引用計數)、weak_ptr(打破循環引用)。現代 C++ 首選智慧指標,避免裸指標。程式設計基礎考題往往聚焦於運算優先序、型別轉換、邏輯等價轉換、核心概念精準定義。建議建立「錯題本」,歸納每類陷阱的根本原因(如整數除法截斷、有號無號轉換、運算子優先序),並在實際編碼中養成防禦性編程習慣:關鍵運算加括號、明確轉型、單元測試覆蓋邊界值。