角色扮演游戏中的字符串化



我想使用变量的名称作为文字/字符串来调用过程。寻找一个过程/api/任何东西来模拟来自 C 的字符串化运算符。甚至可能吗?

myField = Value;
myProc(stringize(myField):myField);

dcl-proc myProc;
dcl-pi;
   variableName char(10);
   value        char(10);
end-pi;
   dsply (variableName + ': ' + value);
end-proc; 

预期成果:
我的字段:值

No.这甚至不是 C 运算符,而是宏扩展的工件。C 预编译器执行扩展。RPG 编译器中没有任何内容可以执行此操作。您可以通过在 developerworks 上提交 RFE 来请求此功能。

但是,我真的不明白这种需求。C 宏只是将参数名称转换为文本,如下所示:

#define stringize(x) #x
a = stringize(test);

结果a = "test";

为什么不直接使用a = "test";

在RPG中,为什么不直接使用a = 'test';

或在您的示例中myProc('myfield': myfield);

stringize(myfield)完成什么?

相关内容

最新更新