Incr Tcl

维基百科,自由的百科全书
跳转到导航 跳转到搜索
Itcl
File:Tcl.svg
编程范型多范式: 面向对象, 函数, 指令, 事件驱动
设计者Michael McLennan
实作者Michael McLennan
发行时间1993
当前版本
    Module:EditAtWikidata第29行Lua错误:attempt to index field 'wikibase' (a nil value)
    型态系统动态类型, 所有物件都可以被当做字符串来处理
    网站{{URL|example.com|可选的显示文本}}Module:EditAtWikidata第29行Lua错误:attempt to index field 'wikibase' (a nil value)
    受影响于
    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类。

    相关参考[编辑]

    外部链接[编辑]