Я использую приложение C ++ для синхронизации данных между двумя PHP-серверами.
Мой первый сервер локальный, мое приложение C ++ вызывает веб-сервис на этом сервере, чтобы получить объект для синхронизации. Затем мое приложение C ++ использует другой веб-сервис для отправки его на мой облачный PHP-сервер.
Таким образом, мой Объект - это мыльный объект, определенный строго одинаково на двух моих php-серверах.
Однако для моих приложений на C ++ эти два объекта не совпадают (или, по крайней мере, с другим пространством имен), поэтому Y не может скомпилировать следующую строку:
soapErrorCode = cloudWebService.action(myLocalObject);
//C++ is waiting for an object of type myCloudObject, even if these two object have the same attributes
Мои объекты мыла и определение Webservice определены в моем C ++ с помощью gSoap.
Я вижу другое решение, но не уверен, какое из них лучше:
- Есть ли способ сообщить C ++, что myLocalObject и myCloudObject одинаковы? Примечание: я не хочу вручную изменять код, сгенерированный gsoap (слишком много работы!).
- Есть ли способ сообщить gsoap, что myLocalObject и myCloudObject одинаковы?
- Обязан ли я создать функцию для преобразования myLocalObject в myCloudObject?
Спасибо!