
- Tcl 教程
- Tcl - 首頁
- Tcl - 概述
- Tcl - 環境設定
- Tcl - 特殊變數
- Tcl - 基本語法
- Tcl - 命令
- Tcl - 資料型別
- Tcl - 變數
- Tcl - 運算子
- Tcl - 決策
- Tcl - 迴圈
- Tcl - 陣列
- Tcl - 字串
- Tcl - 列表
- Tcl - 字典
- Tcl - 過程
- Tcl - 包
- Tcl - 名稱空間
- Tcl - 檔案 I/O
- Tcl - 錯誤處理
- Tcl - 內建函式
- Tcl - 正則表示式
- Tk 教程
- Tk - 概述
- Tk - 環境
- Tk - 特殊變數
- Tk - 小部件概述
- Tk - 基本小部件
- Tk - 佈局小部件
- Tk - 選擇小部件
- Tk - 畫布小部件
- Tk - 超級小部件
- Tk - 字型
- Tk - 影像
- Tk - 事件
- Tk - 視窗管理器
- Tk - 幾何管理器
- Tcl/Tk 有用資源
- Tcl/Tk - 快速指南
- Tcl/Tk - 有用資源
- Tcl/Tk - 討論
Tcl - 包
包用於建立可重用的程式碼單元。一個包包含一組提供特定功能的檔案。這組檔案由一個包名標識,並且可以具有相同檔案的多個版本。包可以是一組 Tcl 指令碼、二進位制庫或兩者的組合。
包使用名稱空間的概念來避免變數名和過程名的衝突。在我們的下一個“名稱空間”教程中檢視更多內容。
建立包
可以使用至少兩個檔案來建立包。一個檔案包含包程式碼。另一個檔案包含用於宣告包的索引包檔案。
下面列出了建立和使用包的步驟。
步驟 1:建立程式碼
在資料夾(例如 HelloWorld)中建立包程式碼。讓檔名為 HelloWorld.tcl,程式碼如下所示:
# /Users/rajkumar/Desktop/helloworld/HelloWorld.tcl # Create the namespace namespace eval ::HelloWorld { # Export MyProcedure namespace export MyProcedure # My Variables set version 1.0 set MyDescription "HelloWorld" # Variable for the path of the script variable home [file join [pwd] [file dirname [info script]]] } # Definition of the procedure MyProcedure proc ::HelloWorld::MyProcedure {} { puts $HelloWorld::MyDescription } package provide HelloWorld $HelloWorld::version package require Tcl 8.0
步驟 2:建立包索引
開啟 tclsh。切換到 HelloWorld 目錄並使用 pkg_mkIndex 命令建立索引檔案,如下所示:
% cd /Users/rajkumar/Desktop/helloworld % pkg_mkIndex . *.tcl
步驟 3:將目錄新增到 autopath
使用 lappend 命令將包新增到全域性列表中,如下所示:
% lappend auto_path "/Users/rajkumar/Desktop/helloworld"
步驟 4:新增包
接下來,使用 package require 語句將包新增到程式中,如下所示:
% package require HelloWorld 1.0
步驟 5:呼叫過程
現在,一切設定就緒,我們可以呼叫我們的過程,如下所示:
% puts [HelloWorld::MyProcedure]
您將獲得以下結果:
HelloWorld
前兩個步驟建立了包。建立包後,您可以透過新增最後三個語句(如下所示)在任何 Tcl 檔案中使用它:
lappend auto_path "/Users/rajkumar/Desktop/helloworld" package require HelloWorld 1.0 puts [HelloWorld::MyProcedure]
您將獲得以下結果:
HelloWorld
廣告