引数の説明
INVOKE文. |
例
000001 IDENTIFICATION DIVISION. 000002 DELEGATE-ID. D5733. 000003 DATA DIVISION. 000004 LINKAGE SECTION. 000005 01 LK1 PIC X(10). 000006 PROCEDURE DIVISION USING LK1. 000007 END DELEGATE D5733.
000001 IDENTIFICATION DIVISION. 000002 CLASS-ID. C5733. 000003 ENVIRONMENT DIVISION. 000004 CONFIGURATION SECTION. 000005 REPOSITORY. 000006 DELEGATE D5733. 000007 IDENTIFICATION DIVISION. 000008 STATIC. 000009 PROCEDURE DIVISION. 000010 IDENTIFICATION DIVISION. 000011 METHOD-ID. MAIN. 000012 DATA DIVISION. 000013 WORKING-STORAGE SECTION. 000014 01 WDLG OBJECT REFERENCE D5733. 000015 01 CNAME PIC X(6) VALUE "C5733". 000016 PROCEDURE DIVISION. 000017 INVOKE D5733 "NEW" USING CNAME "M5433" 000018 RETURNING WDLG 000019 END METHOD MAIN. 000020 END STATIC. 000021* 000022 IDENTIFICATION DIVISION. 000023 OBJECT. 000024 PROCEDURE DIVISION. 000025* 000026 IDENTIFICATION DIVISION. 000027 METHOD-ID. M5733. 000028 DATA DIVISION. 000029 LINKAGE SECTION. 000030 01 LK1 PIC X(10). 000031 PROCEDURE DIVISION USING LK1. 000032 DISPLAY "HELLO " LK1. 000033 END METHOD M5733. 000034 END OBJECT. 000035 END CLASS C5733.
C5733.cob (17) : JMN5733I-S デリゲートの"NEW"を呼び出すINVOKE文では,USING指定の第1パラメタは,クラス名,オブジェクト参照項目または,定義済みオブジェクト一意名SELFでなければなりません.INVOKE文を無効とします.
詳細な説明
デリゲートのNEWメソッド(コンストラクタ)の呼出しは通常と異なるINVOKE文を使用します.
このINVOKE文は,通常のINVOKE文と異なり,次の規則があります.
BY指定はBY VALUEしか指定できない.また,BY指定を省略した場合,BY VALUEが指定されたと見なす.
USING指定に記述するパラメタの数は2つでなければならない.
USING指定に記述した1つ目のパラメタは,クラス名,オブジェクト参照項目または,定義済みオブジェクト一意名SELFでなければならない.
USING指定に記述した2つ目のパラメタは,文字定数,日本語定数またはメソッド指定子で宣言した名前でなければならない.
デリゲートのNEWメソッド(コンストラクタ)の1つ目のパラメタには,生成したデリゲートオブジェクトを介してメソッドを呼び出す際に実際に使用するオブジェクト参照項目またはクラスの型を指定する必要があります.
このINVOKE文の詳細については“COBOL 文法書”を参照してください.