Strong Typing in Class, Objects, and Variable code
Visual FoxPro is not a strongly typed language in which you must declare variables as a specific data type. However, strong typing provides control that makes coding easier and less error-prone, and supports IntelliSense for these items in the editor.
Note Strong typing is not enforced at design time or at run time. In Visual FoxPro, strong typing allows IntelliSense objects in the editor. Strong typing also is used in OLEPUBLIC type libraries.
To implement strong typing, use the AS clause in LPARAMETERS Command, PARAMETERS Command, LOCAL Command, and PUBLIC Command parameter and variable declarations, as well as FUNCTION Command and PROCEDURE Command statements as in the following examples:
LOCAL oExcel AS "excel.application"
oExcel = CreateObject("excel.application")
oExcel. &&displays dropdown
PUBLIC ARRAY MyArray[2] AS _form OF ffc\_base
LPARAMETERS MyParam1 AS string OF _base.vcx
PARAMETERS MyParam1 AS custom OF Mybase.vcx
FUNCTION MyFunction AS custom
You can also use the AS clause in the DEFINE CLASS Command command to apply strong typing to objects, method parameters, and values.
DEFINE CLASS MyClass1 AS custom OLEPUBLIC
FUNCTION MyMethod (MyParam1 AS integer, MyParam2 AS string) AS integer
RETURN MyParam1
ENDFUNCTION
ENDDEFINE