最近、gSOAP を使用して構築する小さな C++ SOAP クライアント プロジェクト (ubuntu linux) を取得しました。ドキュメントに従って正しく作成したと思われる2つのWebサービスクラスを使用しています。ただし、コードに問題があります
#include "envH.h"
#include "betfairBFGlobalServiceProxy.h"
#include "betfairBFExchangeServiceProxy.h"
//#include "betfair.nsmap"
#include <iostream>
#include <string>
// Following included to prevent ligsoap++ complaining of undefined references
// to 'namespaces'
SOAP_NMAC struct Namespace namespaces[] = {};
using namespace std;
using namespace betfair;
int main()
{
BFGlobalServiceProxy bf;
BFExchangeServiceProxy betfair2; /* CRASH!! */
return 0;
}
両方の Web サービスに対して API 呼び出しを行いたいのですが、2 番目のサービス プロキシ オブジェクトが作成される時点でプログラムがクラッシュします。wsdl2h -gbetfair オプションと soapcpp2 -i -n オプションを使用し、C++ 名前空間を使用して複数のクライアント サービスを作成するときにドキュメントで要求されているように新しい env.h ファイルを作成して、 libgsoap++ にリンクするときのリンカー エラーを回避しました。誰が私が間違っているかを見ることができますか???