gpt4 book ai didi

java - 如何使用 IDL 将对象作为参数传递

转载 作者:行者123 更新时间:2023-11-30 07:14:05 25 4
gpt4 key购买 nike

我是 idl、corba 的新手。我有一个java代码,我想通过使用它的一个方法来分发,并且该方法需要来自另一个类的对象作为参数。请问如何使用 idl 指定此场景。

public void receive(Receiver rec, Message msg) {
rec.treatMessage(msg);
}

这是我尝试定义为我的 idl

module talk {
struct Message{
string msg;
double time;
};
typedef Received Receiver;
interface Contract{
void receive(in Receiver rec, in Message msg);
};
};

每次我对 idlj 运行此命令时,我都会收到“已接收”是未声明类型的消息。请问我该如何解决这个问题?

谢谢。

最佳答案

您必须使用 treatMessage 操作声明 Receiver 类型的接口(interface),就像使用 receive 操作声明 Contract 类型的接口(interface)一样。或者做

module talk {
struct Message{
string msg;
double time;
};
interface Receiver{
void receive(in Message msg);
};
};

关于java - 如何使用 IDL 将对象作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38720135/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com