![]() | |
编程范型 | 多範式: 面向對象, 函數, 指令, 事件驅動 |
---|---|
設計者 | Michael McLennan |
實作者 | Michael McLennan |
发行时间 | 1993 |
当前版本 |
![]() |
型態系統 | 動態類型, 所有物件都可以被當做字符串來處理 |
網站 | incrtcl![]() |
啟發語言 | |
Tcl, C++ |
incr Tcl (incr,即increase,在英文中表示"+", 這個名字是由 "C++"而來, 簡寫作 "itcl"),是Tcl編程語言的面向對象編程的擴展包。它被廣泛使用Tcl編程人員廣泛使用。Itcl有兩種使用方式,一是軟體包(package),可被Tcl程序動態載入;一是作為單獨的語言,有自己的解譯器(standalone interpreter)。
Itcl 允許使用命名空間(namespace)來組織的命令和變量。
例:
package require Itcl itcl::class Toaster { variable crumbs 0 method toast {nslices} { if {$crumbs > 50} { error "== FIRE! FIRE! ==" } set crumbs [expr $crumbs+4*$nslices] } method clean {} { set crumbs 0 } } itcl::class SmartToaster { inherit Toaster method toast {nslices} { if {$crumbs > 40} { clean } return [chain $nslices] } } set toaster [SmartToaster #auto] $toaster toast 2
Itcl (跟Tcl一樣) 內置有C代碼整合支持,讓C代碼整合為Itcl類。