今天在学习ABAP代码时,学到相关类中函数的创建以及函数参数的传递。遇到了如下的问题:
以下代码为类的定义
其中关于类中函数参数的定义代码段如下:
其中,定义了三个函数,set、get、chg,分别对应的参数是set_value、get_value、chg_value. 其中 set 对应的参数是个内标,其余参数为整数。
其中每个函数对应的参数类型:
importing: 数据输入接口
exporting: 数据输出接口
changing: 可同时作为输入、输出参数
在类函数进行调用的时候,代码块如下
其set 后跟了 exporting,但其get后跟了importing,换过来后就会报错。
根据错误描述,应该是 输入参数importing 在进行参数传递的时候,需要使用 exporting,即定义时是输入参数的参数,传参的时候需要使用输出关键值来修饰(不一定对,等以后懂了再反过来看这个)
第二天来修改
在定义参数时,使用 importing定义set的参数 set_value,期待的是将一个值传递给方法set,即希望将一个表传递给set函数,然后再方法中使用表的内容,在使用时,语法仅允许使用exporting关键字,是因为exporting在调用语法中通常用于指定参数,而importing则用于描述参数不应该被方法修改。