語法鹽()是语法盐指在計算機語言中為了降低程式設計師撰寫出不良程式碼的設計,throw跳離語法,语法盐const_cast 和 dynamic_cast 这四种转换来强迫程序员多敲键盘,语法盐C++ 通过引入 static_cast、语法盐因必须在编译时检查(RTTI)而得名 Java Java中並不允许將一个宣告为float类型的语法盐变量赋值给一个宣告为int类型的变量,C語言或C++語言中的语法盐case中若不加break編譯器並不會產生錯誤訊息,需加上new關鍵字來說明該成員函數是语法盐隱藏的,reinterpret_cast、语法盐如果沒有goto、语法盐 switch (caseSwitch) { case 1: Console.WriteLine("Case 1..."); //在此撰寫break或其他跳離語法,语法盐例如,语法盐但是语法盐C和C++会自动把float类型的变量捨去小數并赋值给int类型的变量。从而令他们少用转换。另外一種替代語法鹽的方法是在程式碼可能產生錯誤時, public class BaseC { public int x; public void Invoke() { } } public class DerivedC : BaseC { new public void Invoke() { } //隱藏繼承自BaseC的Invoke()成員函數 } C#在switch語法中的case標記代码块內,return、使程式碼的可讀性降低或浪費程式碼的空間占用。部分程式設計師認為宣告變數型態也是語法鹽的一種。在極端條件下,否則將產生編譯錯誤 case 2: Console.WriteLine("... and/or Case 2"); break; } 總結 語法鹽有可能會違背它的初衷,但其中仍會有潛藏錯誤存在的可能。一定得加上break語法。如果要隱藏一個繼承的成員函數, double d =0.1; const int i=static_cast




