簡介
類型擦除是電腦程式設計時,在編譯期明確去掉所編程式(某部分)的類型系統。
操作語義不需要程式伴隨著類型,這稱作“類型擦除語義”(type-erasure semantics)。 類型擦除語義的一種可能是通過抽象原理,確保程式在運行時執行不依賴類型信息。
與之相對的是類型傳遞語義(type-passing semantics)。如通過具體化。類型擦除的逆操作是類型推斷。
類型推論
類型推論、 類型推斷、或 隱含類型,是指程式語言在編譯期中能夠自動推導出值的數據類型的能力,它是一些強靜態類型語言的特性。一般而言,函式式程式語言也具有此特性。自動推斷類型的能力讓很多編程任務變得容易,讓程式設計師可以忽略類型標註的同時仍然允許類型檢查。
具有類型推論的語言有:Rust,Haskell,Cayenne,Clean,ML,OCaml,Epigram,Scala,Nemerle,D,Chrome,Visual Basic 2008和Boo。計畫支持類型推論的有Fortress,Vala,C# 3.0,C++11和Perl 6。
顯式的轉換到另一種數據類型叫做“強制”。
參見
•Java的類型擦除
•類型多態