Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

デバッグの例

以下の例では RightTriangle ルーチン (このチュートリアルの最初に紹介されています) の、Compute プロシージャの前にブレークポイントを設定しています。“L+” は、呼び出された Compute プロシージャ内でも、ルーチンを 1 行ずつ停止します。

SAMPLES>zbreak RightTriangle+20^RightTriangle:"L+"

SAMPLES>d ^RightTriangle

Compute the area and hypotenuse of a right triangle
given the lengths of its two sides.

First, choose a unit of measurement. 
(i)nches, (f)eet, (m)iles, (c)entimeters, m(e)ters, (k)ilometers: f

Length of side 1: 4  Accepted.
Length of side 2: 5  Accepted.
 quit:(side2 = "")  // exit the routine
 ^
<BREAK>RightTriangle+21^RightTriangle
SAMPLES 2d0>g  ; continue execution

 do Compute( units, side1, side2)
 ^
<BREAK>RightTriangle+22^RightTriangle
SAMPLES 2d0>write side2
5
SAMPLES 2d0>g

 { set area  = ( A * B ) / 2, 
   ^
       area = $justify( area, 0, 2),
       squaredSides = ( A ** 2 ) + ( B ** 2 ) 
<BREAK>IsNegative+11^RightTriangle
SAMPLES 3d1>write B
5
SAMPLES 3d1>g

   set hypot = $zsqr(squaredSides)
   ^
<BREAK>IsNegative+14^RightTriangle
SAMPLES 3d1>g

   set hypot = $justify( hypot, 0, 2)   // round hypot to 2 places
   ^
<BREAK>IsNegative+15^RightTriangle
SAMPLES 3d1>write hypot
6.403124237432848685
SAMPLES 3d1>b "C"  ; cancel the stepping within Compute

SAMPLES 3d1>g


The area of this triangle is 10.00 square feet.

The hypotenuse is 6.40 feet.
 write !!, "Current date: "
 ^
<BREAK>RightTriangle+23^RightTriangle
SAMPLES 2d0>b "L"  ; don't step into %D or %T

SAMPLES 2d0>g


Current date: 
 do ^%D
 ^
<BREAK>RightTriangle+24^RightTriangle
SAMPLES 2d0>g
Feb 25 2011
 write !, "Current time:"
 ^
<BREAK>RightTriangle+25^RightTriangle
SAMPLES 2d0>g

Current time:
 do ^%T
 ^
<BREAK>RightTriangle+26^RightTriangle
SAMPLES 2d0>g
 6:10 PM
 quit
 ^
<BREAK>RightTriangle+27^RightTriangle
SAMPLES 2d0>g

SAMPLES>
FeedbackOpens in a new tab