С целью получения более тонкого контроля над вашим кодом, облегчения его написания и с тем, чтобы сделать его более стойким к ошибка, а также обеспечения функциональности IntelliSense доступной для визуальных объектов, ссылок на классы, компонентов ActiveX, COM-серверов и определенных пользователем элементов кода, используйте строгую типизацию. OLEPUBLIC библиотеки типов также используют строгую типизацию.
![]() |
---|
Visual FoxPro не является языком строгой типизации и не требует, чтобы декларировали переменные с указанием типа данных. Visual FoxPro не навязывает строгой типизации ни в design, ни в run time. |
Для получения более подробной информации смотрите описание Поддержка IntelliSense в Visual FoxPro.
Для осуществления строгой типизации
-
Для объектов, параемтров методов и значений используйте опцию AS в команде DEFINE CLASS.
-или-
-
Для деклараций параметров и переменных используйте опцию AS в следующих командах:
Когда вы используете в коде опцию AS, IntelliSense отображает выпадающий список доступных типов, включая типы из следующих источников:
-
базовые классы объектов Visual FoxPro.
-
типы данных Visual FoxPro.
Приведенный ниже пример использует опцию AS в команде DEFINE CLASS для осуществления строгой типихации пользовательского OLEPUBLIC класса и метода MyMethod:
![]() | |
---|---|
DEFINE CLASS MyClass1 AS Custom OLEPUBLIC FUNCTION MyMethod (MyParam1 AS integer, MyParam2 AS string) AS integer RETURN MyParam1 ENDFUNCTION ENDDEFINE |
Приведенный ниже пример использует опцию AS в командах LOCAL, PUBLIC, LPARAMETERS, PARAMETERS и FUNCTION для осуществления строгой типизации:
![]() | |
---|---|
LOCAL oExcel AS "excel.application" oExcel = CREATEOBJECT("excel.application") oExcel. && Отображает список членов. 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 |