跳至內容

Incr Tcl

維基百科,自由的百科全書
Itcl
編程範型多範式: 面向對象, 函數, 指令, 事件驅動
設計者Michael McLennan
實作者Michael McLennan
面市時間1993
當前版本
  • Itcl4.1.1(2017年12月21日;穩定版本)
編輯維基數據鏈接
型態系統動態類型, 所有物件都可以被當做字符串來處理
網站incrtcl.sourceforge.net/itcl/ 編輯維基數據鏈接
啟發語言
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

C代碼的整合

Itcl (跟Tcl一樣) 內置有C代碼整合支持,讓C代碼整合為Itcl類。

相關參考

外部連結