2012-08-03 58 views
0

我有两个* .IDL文件,在这里我必须处理循环依赖:如何处理* .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,所以只需运行命令: “让所有”) - 我得到的错误是:

omniidl -bcxx User.idl Group.idl :8:接口正文中的语法错误 Group.idl:8:'用户'查找时出错:'找不到用户' Group.idl:9:查找'Users'时出错:'Users'找不到 Group.idl:10:查找'Users'时发生错误:找不到'Users' User.idl:8:接口主体中的语法错误User.idl:8: 查找'组':'组'找不到User.idl:9:错误在厕所k-up 'Groups':'Groups'找不到User.idl:10:查找错误 'Groups':'Groups'not found omniidl:8 errors。

回答

2

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

接口组;

而且比ZAP公司在用户中包括Group.idl的IDL文件

+0

呀,它有一个工作的机会,请看看:http://pastie.org/private/tx8h0wmb2klxb18brlddg但我关注关于我得到的警告:http://pastie.org/private/vjex0kkhm8rlkr0wr5rqdg这是严重的还是我不必太在意呢?请告诉我,如果你可以 – mazix 2012-08-05 12:02:49