我想实现的是每个人实现自己的是接口gSOAP的两个窗口服务,无一不是客户端,每个接口的服务器。 所以我的问题是,我使用相同的数据类型在两个接口(与成员类),并产生与将创建两个不同的命名空间的soapcpp2.exe -q选项的C ++代码,这是好的,它的工作原理,但问题是这应该是在两个接口相等的数据类型是现在不同,由于名称空间分离,但是如果删除了命名空间我将有冲突,因为共享数据类型具有两个接口相同的名称。
“问题:
interface 1:
---
>class xsd__Address
{
char *email;
char *url;
};
>int ns1__getAddress(xsd__Address& ret);
---
interface 2:
---
>class xsd__Address
{
char *email;
char *url;
};
>int ns2__setAddress(xsd__Address& ret);
---
每个标题的定义后,我与soapcpp2.exe像编译:
soapcpp2.exe -qintf1 -n XXXX //用于接口1
soapcpp2.exe -qintf2 -n XXXX //用于接口2
所以,当我的项目中使用两个接口(接口1和接口2)当我需要的东西是这样的:
intf1::Interface1 int1;
int1.endpoint="xxx";
intf1::ns__Address address;
int1.ns1__getAddress(address);
intf2::Interface1 int2;
int2.endpoint="xxx";
int2.ns2_setAddress(address); //this don't compile like i was expecting because to the compiler they are not the same object (and it is wright...)
问题:
可能有共享的两个或多个接口之间的数据类型? 是? 这是怎么做到的呢?
如果没有什么是实现这一目标的最佳解决方案?