0

我有两个 *.IDL 文件,我必须在其中处理循环依赖:

#ifndef __USER_IDL__
#define __USER_IDL__

#include "Group.idl"

interface User
{
    typedef<sequence> Groups;
        Groups getGroups(); 
    void setGroups(in Groups u);
};

#endif

#ifndef __GROUP_IDL__
#define __GROUP_IDL__

#include "User.idl"

interface Group
{
    typedef<sequence> Users;
        Users getUser();    
    void setUsers(in Users u);
};

#endif

我需要将它保存在单独的文件中,如何解决?

查看我的文件:http ://www32.zippyshare.com/v/32255598/file.html (我在那里添加了一个 Makefile,所以只需运行命令:“make all”) - 我得到的错误是:

omn​​iidl -bcxx User.idl Group.idl:8:接口主体中的语法错误 Group.idl:8:查找“用户”时出错:找不到“用户” Group.idl:9:查找错误“用户”:未找到“用户” Group.idl:10:查找“用户”时出错:未找到“用户” User.idl:8:接口正文中的语法错误 User.idl:8:查找错误-up of 'Groups':找不到'Groups' User.idl:9:查找'Groups'时出错:找不到'Groups' User.idl:10:查找'Groups'时出错:'未找到组的omniidl:8 个错误。

4

1 回答 1

2

您可以转发声明一个接口,例如使用

接口组;

而不是在用户 idl 文件中包含 Group.idl

于 2012-08-04T18:11:30.173 回答