繁体   English   中英

跨平台的C ++函数到APL

[英]Cross-platforming C++ functions to APL

我目前正在为APL编写C ++程序。 到目前为止,我一直在做的事情是在APL中创建一个函数,该函数运行命令提示符并调用可执行文件,并将其创建的输入和输出文件作为参数,然后对C ++可执行文件进行编程以打开输入文件,读取输入并将输出存储在输出文件中,该文件由APL函数提取并存储在一个或多个变量中。 这种方法的问题在于,当我使用更简单的函数(有时会被多次调用或有时被递归调用)时,为进行简单的计算而一直打开和关闭文件会占用大量的处理时间。 我试图找到的是一种从解决方案或库中调用用C ++编写的函数的方法,然后直接在我的APL工作区中使用它。

例如,我有一个C ++中的函数以这种形式编写:

Xadd(int x, int y);

并希望像Xadd (x) (y)这样在APL中编写它,并且以后可以使用∇Xadd通过APL打开它。 谢谢。

如果您从APL调用CPP函数,反之亦然,我不太了解。 而且,您没有指定要编写哪种口味的APL,但您可能需要检查以下概念:

  • 共享变量:⎕SVO
  • 辅助处理器
  • 调用编译的程序:⎕NA
    • 请查阅《系统服务参考:IBM APL2 / 370的链接》中的第28章。

我将首先使用单个入口点在DLL中编译Xadd函数,然后尝试使用[] NA。 一个有用的垫脚石可能是首先在Excel(或Word或任何其他使用VBA的MS Office应用程序)中使用VBA进行DLL调用,然后再进行APL。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM