我使用C ++应用程序在两台PHP服务器之间同步数据。
我的第一台服务器是本地服务器,我的C ++应用程序调用该服务器上的Web服务以获取同步对象。然后,我的C ++应用程序使用另一个Web服务将其发送到我的Cloud PHP服务器上。
所以我的对象是在我的两个php服务器上严格相同定义的soap对象。
但是,对于我的C ++应用程序,这两个对象不一样(或者至少使用不同的命名空间),因此Y无法编译以下行:
soapErrorCode = cloudWebService.action(myLocalObject);
//C++ is waiting for an object of type myCloudObject, even if these two object have the same attributes
我的soap对象和Webservice定义是在我的C ++中借助gSoap定义的。
我看到了不同的解决方案,但不确定哪个是最好的:
谢谢!
答案 0 :(得分:1)
在我看来,有两种可能的变体:
myLocalObject
写入myCloudObject
,从myCloudObject
写入myLocalObject
myLocalObject
和myCloudObject
创建基类并完成其指针。