[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
EXTERNAL*
Declare a list of procedure or user-defined function names to the linker
------------------------------------------------------------------------------
Syntax
EXTERNAL <idProcedure list>
Arguments
<idProcedure list> is the list of procedures, user-defined
functions, or format procedures to add to the list of routines that will
be linked into the current executable (.EXE) file.
Description
EXTERNAL is a declaration statement that specifies uncoded references to
the linker. Like all other declaration statements, an EXTERNAL
statement must be specified before any executable statements in either
the program file, or a procedure or user-defined function definition.
During the compilation of CA-Clipper source code, all explicit
references to procedures and user-defined functions are made to the
linker. In some instances, there may be no references made to procedure
or user-defined function names until runtime. EXTERNAL resolves this by
forcing the named procedures or user-defined functions to be linked even
if they are not explicitly referenced in the source file. This is
important in several instances:
. Procedures, user-defined functions, or formats referenced with
macro expressions or variables
. Procedures and user-defined functions used in REPORT and LABEL
FORMs and not referenced in the source code
. User-defined functions used in index keys and not referenced
in the source code
. ACHOICE(), DBEDIT(), or MEMOEDIT() user functions
To group common EXTERNAL declarations together, place them in a header
file and then include (#include) the header file into each program
(.prg) file that might indirectly use them.
EXTERNAL is a compatibility statement and therefore not recommended. It
is superseded by the REQUEST statement that defines a list of module
identifiers to the linker.
Examples
. These examples are equivalent header files consisting of
common EXTERNAL references for REPORT FORMs:
// Externals.ch
EXTERNAL HARDCR
EXTERNAL TONE
EXTERNAL MEMOTRAN
EXTERNAL STRTRAN
// Externals.ch
EXTERNAL HARDCR, TONE, MEMOTRAN, STRTRAN
See Also:
#include
REQUEST
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson