C++中OUT关键字在JAVA中怎么对应

发布于 2021-11-11 05:59:19 字数 515 浏览 799 评论 9

JNI中遇到的问题请大家发言下。

C++中代码

typedef DWORD   RECEIVERID;

HCTERR HCTAPI HCTRegisterReceiver ( IN RECEIVERINFO *pReceiver, OUT RECEIVERID *pRID );

JAVA对应代码

static int pid;

public String HctRegisterRecevier(Peceiverinfo info)
{
   //执行内容略
    info.do
   return  str;
}

问题:

C++这个方法中out pid 相当于一个返回值,但这个pid在其它的方法中可以取到值。

而JAVA中没有out参数,这样的方法怎么对应那。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

少女净妖师 2021-11-17 12:53:49

本来想进来学新东西的:)

冬天旳寂寞 2021-11-17 12:53:01

那JNA中怎么获取这个 out参数中的值那?

 

一人独醉 2021-11-17 12:51:42

IN OUT 在 window api 中是为了表示参数是为了输入,还是为了获得输出的。

牵你的手,一向走下去 2021-11-17 12:45:13

只是表明这个参数是输出的

哑剧 2021-11-17 12:42:56

楼主out了,C++木有out,out只宏定义,表示输出, 增加程序易读性, 可要可不要

醉生梦死 2021-11-17 06:29:06

立刻试验

猫性小仙女 2021-11-16 21:39:22

C++ OUT的定义为

#define OUT 

OUT只是为了阅读方便,编译都去掉了,只是一个宏定义,而不是关键字

恋你朝朝暮暮 2021-11-16 08:20:11

OUT什么时候变成C++的关键字了,求科普。

一笔一画续写前缘 2021-11-14 10:21:18

Java 和 C 之间是不需要直接对应的,使用 JNI 时你定义一个接口包含 native 的方法,然后生成对应的 C 语言的桩。

DWORD 可以对应 Java 的 int,但因为 Java 的 int 是传值的,你可以声明为 Integer,例如

public native String HCTRegisterReceiver(PeceiverInfo info, Integer pRID);

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文