Maple für Professional
Maple für Akademiker
Maple für Studenten
Maple Personal Edition
Maple Player
Maple Player für iPad
MapleSim für Professional
MapleSim für Akademiker
Maple T.A. - Testen & beurteilen
Maple T.A. MAA Placement Test Suite
Möbius - Online-Courseware
Machine Design / Industrial Automation
Luft- und Raumfahrt
Fahrzeugtechnik
Robotics
Energiebranche
System Simulation and Analysis
Model development for HIL
Anlagenmodelle für den Regelungsentwurf
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematikausbildung
Technik
Allgemein- und berufsbildende Schulen
Testen und beurteilen
Studierende
Finanzmodelle
Betriebsforschung
Hochleistungsrechnen
Physik
Live-Webinare
Aufgezeichnete Webinare
Geplante Veranstaltungen
MaplePrimes
Maplesoft-Blog
Maplesoft-Mitgliedschaft
Maple Ambassador Program
MapleCloud
Technische Whitepapers
E-Mail Newsletters
Maple-Bücher
Math Matters
Anwendungs-Center
MapleSim Modell-Galerie
Anwenderberichte
Exploring Engineering Fundamentals
Lehrkonzepte mit Maple
Maplesoft Welcome-Center
Resource-Center für Lehrer
Help-Center für Studierende
local - モジュールの局所変数
使い方
local loc1, loc2, ...;
パラメータ
loc1, loc2, ... - 1 個以上の局所変数名、または型の指定された変数
説明
モジュール定義の先頭部分には、1個以上の局所変数の宣言を含んでいても構いません。これらの局所変数は手続きにおける局所変数と全く同じものです。それぞれの式 loci(i=1,2,...) は symbol であるか、 `::` を用いた式でなければなりません。第1オペランド(変数名)は、 symbol 型の変数です。 局所変数が `::` を用いて宣言された場合には、kernelopts( 'assertlevel' ) の値が 2 以上になっていない限り、 型がチェックされることになります。
局所変数として拘束されている変数は、それを宣言しているモジュール定義の本体中では見ることができるが、その外部からは見ることができません。 エクスポート変数のように( :- を使って)アクセスしようとしても、エラーになるだけです。
局所変数は、それを拘束しているモジュールの定義を実行するために、一意的に存在しています。モジュール定義が実行されるたびに、新しい局所変数の集合が生成されるのです(定義の実行は評価計算の一部なのです)。
モジュールの局所変数の評価規則は、手続きの局所変数の評価規則と同じです(詳細については eval を参照して下さい)。
モジュール内の局所変数をアクセスしたいならば、局所変数の値を調べたり修正したりするためのエクスポート変数を用意すると良いでしょう。 注意: 局所変数がモジュールから「解放」される様子は、手続きから局所変数が解放される場合と同じになります。
例
m := module() local loc1; export setter, getter; loc1 := 2; getter := proc() loc1 end proc; setter := proc( v ) loc1 := v end proc; end module: m:-getter();
m:-loc1; # no direct access to loc1
Error, module does not export `loc1`
m:-setter( 5 ); # loc1 can be accessed indirectly
m:-getter(); # and here
参照
module, module[export], procedure
Download Help Document