引数の説明
デリゲート名. |
エラーの原因となったデリゲートの名前. |
例
000001 IDENTIFICATION DIVISION. 000002 DELEGATE-ID. D5724. 000003 ENVIRONMENT DIVISION. 000004 CONFIGURATION SECTION. 000005 REPOSITORY. 000006 CLASS SYSOBJ AS "System.Object" 000006 CLASS SYSSTR AS "System.String". 000007 DATA DIVISION. 000008 LINKAGE SECTION. 000010 01 LK1 OBJECT REFERENCE SYSSTR. 000009 01 LK2 OBJECT REFERENCE SYSOBJ. 000010 01 LK3 OBJECT REFERENCE SYSSTR. 000011 PROCEDURE DIVISION 000012 USING BY VALUE LK1 LK2 000013 RETURNING LK3. 000014 END DELEGATE D5724.
000001 IDENTIFICATION DIVISION. 000002 PROGRAM-ID. P5724. 000003 ENVIRONMENT DIVISION. 000004 CONFIGURATION SECTION. 000005 REPOSITORY. 000006 DELEGATE D5724 000007 CLASS SYSSTR AS "System.String". 000008 DATA DIVISION. 000009 WORKING-STORAGE SECTION. 000010 01 WDLGT OBJECT REFERENCE D5724. 000011 PROCEDURE DIVISION. 000012 INVOKE D5724 "NEW" USING BY VALUE SYSSTR 000013 "Format" 000014 RETURNING WDLGT 000015 SET WDLGT TO D5724 :: "NEW" (SYSSTR "Format") 000016 END PROGRAM P5724.
P5724.cob (15) : JMN5724I-S 行内呼出し,オブジェクトプロパティまたはフィールド参照で,デリゲート名D5724はメソッドを呼び出すオブジェクトとして使用することはできません.
詳細な説明
デリゲートのNEWメソッド(コンストラクタ)の呼出しは特殊な構文のINVOKE文でのみ呼び出すことが可能です.デリゲートのNEWメソッドにメソッドの行内呼出しは使用できません.また,デリゲート定義にはフィールド,プロパティは宣言できないため,これらを呼び出すオブジェクトとしても指定できません.
デリゲートのNEWメソッド(コンストラクタ)を呼び出すのであれば,INVOKE文を使用してください.