DEFWRD statement

Purpose | Declare the default type for variable identifiers that begin with specified letters.
Syntax | DEFtype letter_range [, letter_range] [, ...]
Remarks | type represents one of PowerBASIC's variable types: INT (Integer), LNG (Long-integer), QUD (Quad-integer), SNG (Single-precision floating-point), DBL (Double-precision floating-point), EXT (Extended-precision floating-point), CUR (Currency), CUX (Extended-currency), STR (String), BYT (Byte), WRD (Word), and DWD (Double-word).
letter_range | is either a single alphabetic character (A through Z, case insignificant), or a range of letters (two letters separated by a hyphen, for example, A-M).
DEFtype | Tells the compiler that variables and user-defined functions, whose names begin with the specified letter or range of letters, are of the specified type. Normally, when the compiler finds a variable name without a type specifier, a compile-time error is generated. If however, there was a preceding DEF type statement such as DEFINT A-Z, the variable would default to that type (in this case, an Integer variable). You may use multiple DEF type statements. If there is overlap between two DEF type statements, no error is generated; but the definition of the latter DEF type statement overrides the former where the two overlap. The DEF type statement may not be supported in future editions of PowerBASIC, so we recommend explicit variable declarations, using DIM, INSTANCE, LOCAL, STATIC, THREADED, or GLOBAL.
Restrictions | Def type only applies to implicitly-defined variables. It has no effect on variables that are defined explicitly. If a #DIM ALL statement exists in the application then Deftype statements will have no effect, #DIM ALL requires all variables to be defined explicitly
Example | DEFINT A-E, G, Q, Y-Z DEFCUX B, F, H-P, R-X FUNCTION PBMAIN A = 1 ' A is Integer B = 2 ' B is Extended-currency. [statements] END FUNCTION
See Also | #DIM ALL, DIM, INSTANCE, LOCAL, STATIC, THREADED, GLOBAL