亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? xml-rpc.cpp

?? linux下簡單對象應用協議的開發庫
?? CPP
字號:
/*XML-RPC definitions for C++Note: XML-RPC declarations are given in the gSOAP header file xml-rpc.hIterators and iostream operators are declared in xml-rpc-iters.hExample calling sequence:// get XML-RPC serializers#include "soapH.h"#include "xml-rpc-io.h"// set up contextsoap *ctx = soap_new();// define methodmethodCall myMethod(ctx, "<endpoint-URL>", "<method-name>");// populate input parametersmyMethod[0] = ...; // first parammyMethod[1] = ...; // second param...// make the call and get the response parametersparams output = myMethod();// error?if (myMethod.error())  soap_print_fault(ctx, stderr);else if (output.empty())  cout << myMethod.fault() << endl;else  for (params::iterator arg = output.begin(); arg != output.end(); ++arg)    cout << *arg << endl;// delete allsoap_destroy(ctx);soap_end(ctx);soap_done(ctx);free(ctx);--------------------------------------------------------------------------------gSOAP XML Web services toolsCopyright (C) 2001-2004, Robert van Engelen, Genivia, Inc. All Rights Reserved.This software is released under one of the following two licenses:GPL or Genivia's license for commercial use.--------------------------------------------------------------------------------GPL license.This program is free software; you can redistribute it and/or modify it underthe terms of the GNU General Public License as published by the Free SoftwareFoundation; either version 2 of the License, or (at your option) any laterversion.This program is distributed in the hope that it will be useful, but WITHOUT ANYWARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR APARTICULAR PURPOSE. See the GNU General Public License for more details.You should have received a copy of the GNU General Public License along withthis program; if not, write to the Free Software Foundation, Inc., 59 TemplePlace, Suite 330, Boston, MA 02111-1307 USAAuthor contact information:engelen@genivia.com / engelen@acm.org--------------------------------------------------------------------------------A commercial use license is available from Genivia, Inc., contact@genivia.com--------------------------------------------------------------------------------*/#include "soapH.H"value::value(){ }value::value(struct soap *soap){ soap_default_value(soap, this);}value::value(struct soap *soap, struct _array &a){ soap_default_value(soap, this);  *this = a;}value::value(struct soap *soap, _base64 &b){ soap_default_value(soap, this);  *this = b;}value::value(struct soap *soap, bool b){ soap_default_value(soap, this);  *this = b;}value::value(struct soap *soap, char *s){ soap_default_value(soap, this);  *this = s;}value::value(struct soap *soap, double d){ soap_default_value(soap, this);  *this = d;}value::value(struct soap *soap, int n){ soap_default_value(soap, this);  *this = n;}value::value(struct soap *soap, struct _struct &r){ soap_default_value(soap, this);  *this = r;}bool value::is_array() const{ return __type == SOAP_TYPE__array;}bool value::is_base64() const{ return __type == SOAP_TYPE__base64;}bool value::is_bool() const{ return __type == SOAP_TYPE__boolean;}bool value::is_double() const{ return __type == SOAP_TYPE__double;}bool value::is_false() const{ return __type == SOAP_TYPE__boolean && (bool)*(_boolean*)ref == false;}bool value::is_int() const{ return __type == SOAP_TYPE__int || __type == SOAP_TYPE__i4;}bool value::is_struct() const{ return __type == SOAP_TYPE__struct;}bool value::is_string() const{ return __type == SOAP_TYPE__string || (__any && *__any);}bool value::is_true() const{ return __type == SOAP_TYPE__boolean && (bool)*(_boolean*)ref == true;}value::operator struct _array&(){ if (__type == SOAP_TYPE__array)    return *(struct _array*)ref;  return *soap_new__array(soap, -1);}value::operator const struct _array&() const{ if (__type == SOAP_TYPE__array)    return *(const struct _array*)ref;  return *soap_new__array(soap, -1);}value::operator struct _base64&(){ if (__type == SOAP_TYPE__base64)    return *(struct _base64*)ref;  return *soap_new__base64(soap, -1);}value::operator const struct _base64&() const{ if (__type == SOAP_TYPE__base64)    return *(const struct _base64*)ref;  return *soap_new__base64(soap, -1);}value::operator char*(){ if (__type == SOAP_TYPE__string || __type == SOAP_TYPE__dateTime_DOTiso8601)    return (char*)ref;  if (__any)    return __any;  return "";}value::operator const char*() const{ if (__type == SOAP_TYPE__string || __type == SOAP_TYPE__dateTime_DOTiso8601)    return (const char*)ref;  if (__any)    return __any;  return "";}value::operator double() const{ if (__type == SOAP_TYPE__double)    return (double)*(_double*)ref;  return 0.0;}value::operator int() const{ if (__type == SOAP_TYPE__int)    return (int)*(_int*)ref;  if (__type == SOAP_TYPE__i4)    return (int)*(_i4*)ref;  return 0;}value::operator struct _struct&(){ if (__type == SOAP_TYPE__struct)    return *(struct _struct*)ref;  return *soap_new__struct(soap, -1);}value::operator const struct _struct&() const{ if (__type == SOAP_TYPE__struct)    return *(const struct _struct*)ref;  return *soap_new__struct(soap, -1);}struct value& value::operator[](int n){ return ((struct _array&)*this)[n];}struct value& value::operator[](const char *s){ return ((struct _struct&)*this)[s];}struct _array& value::operator=(struct _array& a){ __type = SOAP_TYPE__array;  __any = NULL;  ref = &a;  return a;}_base64& value::operator=(_base64& b){ __type = SOAP_TYPE__base64;  __any = NULL;  ref = &b;  return b;}bool value::operator=(bool b){ __type = SOAP_TYPE__boolean;  __any = NULL;  ref = soap_malloc(soap, sizeof(_boolean));  *(_boolean*)ref = (_boolean)b;  return b;}char* value::operator=(char *s){ __type = SOAP_TYPE__string;  __any = NULL;  ref = soap_strdup(soap, s);  return s;}double value::operator=(double d){ __type = SOAP_TYPE__double;  __any = NULL;  ref = soap_malloc(soap, sizeof(_double));  *(_double*)ref = (_double)d;  return d;}int value::operator=(int n){ __type = SOAP_TYPE__int;  __any = NULL;  ref = soap_malloc(soap, sizeof(_int));  *(_int*)ref = (_int)n;  return n;}struct _struct& value::operator=(struct _struct& r){ __type = SOAP_TYPE__struct;  __any = NULL;  ref = &r;  return r;}time_t value::operator=(time_t t){ __type = SOAP_TYPE__dateTime_DOTiso8601;  __any = NULL;  ref = soap_strdup(soap, soap_dateTime2s(soap, t));  return t;}_struct::_struct(){ }_struct::_struct(struct soap *soap){ soap_default__struct(soap, this);}_struct::_struct(struct soap *soap, int len){ soap_default__struct(soap, this);  __size = len;  member = (struct member*)soap_malloc(soap, __size * sizeof(struct member));  for (int i = 0; i < __size; i++)    soap_default_member(soap, &member[i]);}bool _struct::empty() const{ return __size == 0;}int _struct::size() const{ return __size;}struct value& _struct::operator[](const char *s){ int i = 0;  if (!member)  { __size = 1;    member = (struct member*)soap_malloc(soap, sizeof(struct member));  }  else  { for (i = 0; i < __size; i++)    { if (!strcmp(member[i].name, s))        return member[i].value;    }    __size++;    struct member *newmember = (struct member*)soap_malloc(soap, __size * sizeof(struct member));    for (i = 0; i < __size - 1; i++)      newmember[i] = member[i];    soap_unlink(soap, member);    free(member);    member = newmember;  }  member[i].name = soap_strdup(soap, s);  soap_default_value(soap, &member[i].value);  return member[i].value;}_struct_iterator _struct::begin(){ _struct_iterator iter(this);  return iter;}_struct_iterator _struct::end(){ _struct_iterator iter(this);  iter += __size;  return iter;}_array::_array(){ }_array::_array(struct soap *soap){ soap_default__array(soap, this);}_array::_array(struct soap *soap, int len){ soap_default__array(soap, this);  data.__size = len;  data.value = (struct value*)soap_malloc(soap, data.__size * sizeof(struct value));  for (int i = 0; i < data.__size; i++)    soap_default_value(soap, &data.value[i]);}bool _array::empty() const{ return data.__size == 0;}int _array::size() const{ return data.__size;}struct value& _array::operator[](int n){ if (!data.value)  { data.__size = n + 1;    data.value = (struct value*)soap_malloc(soap, data.__size * sizeof(struct value));    for (int i = 0; i < data.__size; i++)      soap_default_value(soap, &data.value[i]);  }  else if (data.__size <= n)  { int oldsize = data.__size;    data.__size = n + 1;    struct value *newvalue = (struct value*)soap_malloc(soap, data.__size * sizeof(struct value));    int i;    for (i = 0; i < oldsize; i++)      newvalue[i] = data.value[i];    for (; i < data.__size; i++)      soap_default_value(soap, &newvalue[i]);    soap_unlink(soap, data.value);    free(data.value);    data.value = newvalue;  }  return data.value[n];}_array_iterator _array::begin(){ _array_iterator iter(this);  return iter;}_array_iterator _array::end(){ _array_iterator iter(this);  iter += data.__size;  return iter;}_base64::_base64(){ }_base64::_base64(struct soap *soap){ soap_default__base64(soap, this);}int _base64::size() const{ return __size;}unsigned char* _base64::ptr(){ return __ptr;}params::params(){ }params::params(struct soap *soap){ soap_default_params(soap, this);}params::params(struct soap *soap, int len){ soap_default_params(soap, this);  __size = len;  param = (struct param*)soap_malloc(soap, __size * sizeof(struct param));  for (int i = 0; i < __size; i++)    soap_default_param(soap, &param[i]);}bool params::empty() const{ return __size == 0;}int params::size() const{ return __size;}struct value& params::operator[](int n){ if (!param)  { __size = n + 1;    param = (struct param*)soap_malloc(soap, __size * sizeof(struct param));    for (int i = 0; i < __size; i++)      soap_default_param(soap, &param[i]);  }  else if (__size <= n)  { int oldsize = __size;    __size = n + 1;    struct param *newparam = (struct param*)soap_malloc(soap, __size * sizeof(struct param));    int i;    for (i = 0; i < oldsize; i++)      newparam[i] = param[i];    for (; i < __size; i++)      soap_default_param(soap, &newparam[i]);    soap_unlink(soap, param);    free(param);    param = newparam;  }  return param[n].value;}params_iterator params::begin(){ params_iterator iter(this);  return iter;}params_iterator params::end(){ params_iterator iter(this);  iter += __size;  return iter;}methodCall::methodCall(){ }methodCall::methodCall(struct soap *soap, const char *endpoint, const char *name){ soap_default_methodCall(soap, this);  methodName = soap_strdup(soap, name);  methodEndpoint = soap_strdup(soap, endpoint);  methodResponse = NULL;}struct value& methodCall::operator[](int n){ return params[n];}struct params& methodCall::operator()(){ /* no namespaces */  soap->namespaces = NULL;  /* no SOAP encodingStyle */  soap->encodingStyle = NULL;  /* connect, send request, and receive response */  if (soap_connect(soap, methodEndpoint, NULL)   || soap_begin_send(soap)   || soap_put_methodCall(soap, this, "methodCall", NULL)   || soap_end_send(soap)   || soap_begin_recv(soap)   || !(methodResponse = soap_get_methodResponse(soap, methodResponse, "methodResponse", NULL))   || soap_end_recv(soap))    methodResponse = NULL;  soap_closesock(soap);  if (methodResponse && methodResponse->params)    return *methodResponse->params;  return *soap_new_params(soap, -1);}struct params& methodCall::operator()(const struct params& args){ /* parameters */  params = args;  /* invoke */  return (*this)();}struct params& methodCall::response(){ if (!methodResponse)    methodResponse = soap_new_methodResponse(soap, -1);  if (!methodResponse->params)    methodResponse->params = soap_new_params(soap, -1);  return *methodResponse->params;}struct value& methodCall::fault(){ if (methodResponse && methodResponse->fault)    return methodResponse->fault->value;  return *soap_new_value(soap, -1);}int methodCall::error() const{ return soap->error;}methodResponse::methodResponse(){ }methodResponse::methodResponse(struct soap *soap){ soap_default_methodResponse(soap, this);}_array_iterator::_array_iterator(){ value = start = NULL;}_array_iterator::_array_iterator(const struct _array* a){ value = start = a->data.value;}bool _array_iterator::operator==(const _array_iterator& that) const{ return this->value == that.value;}bool _array_iterator::operator!=(const _array_iterator& that) const{ return this->value != that.value;}int _array_iterator::index() const{ return value - start;}struct value& _array_iterator::operator*() const{ return *value;}_array_iterator& _array_iterator::operator++(){ value++;  return *this;}_array_iterator& _array_iterator::operator+=(int step){ value += step;  return *this;}_struct_iterator::_struct_iterator(){ member = NULL;}_struct_iterator::_struct_iterator(const struct _struct* s){ member = s->member;}bool _struct_iterator::operator==(const _struct_iterator& that) const{ return this->member == that.member;}bool _struct_iterator::operator!=(const _struct_iterator& that) const{ return this->member != that.member;}const char* _struct_iterator::index() const{ return member->name;}struct value& _struct_iterator::operator*() const{ return member->value;}_struct_iterator& _struct_iterator::operator++(){ member++;  return *this;}_struct_iterator& _struct_iterator::operator+=(int step){ member += step;  return *this;}params_iterator::params_iterator(){ start = param = NULL;}params_iterator::params_iterator(const struct params* s){ start = param = s->param;}bool params_iterator::operator==(const params_iterator& that) const{ return this->param == that.param;}bool params_iterator::operator!=(const params_iterator& that) const{ return this->param != that.param;}int params_iterator::index() const{ return param - start;}struct value& params_iterator::operator*() const{ return param->value;}params_iterator& params_iterator::operator++(){ param++;  return *this;}params_iterator& params_iterator::operator+=(int step){ param += step;  return *this;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美激情一区二区三区不卡| 欧美麻豆精品久久久久久| 麻豆国产欧美日韩综合精品二区| 亚洲另类一区二区| 国产精品精品国产色婷婷| 国产欧美日韩视频一区二区| 久久久久久夜精品精品免费| 欧美videos大乳护士334| 欧美一激情一区二区三区| 精品精品国产高清a毛片牛牛| 日韩欧美国产电影| 久久色在线视频| 中国色在线观看另类| 亚洲免费三区一区二区| 香蕉影视欧美成人| 男人操女人的视频在线观看欧美| 久久精品国产一区二区三| 国产精品一区二区不卡| av亚洲精华国产精华精华| 色伊人久久综合中文字幕| 欧美三级午夜理伦三级中视频| 欧美顶级少妇做爰| 久久精品一区八戒影视| 国产精品国产三级国产| 亚洲成av人片在线观看| 精品一区二区三区在线播放| 成人动漫一区二区| 欧美人动与zoxxxx乱| 久久久久久久精| 综合久久久久综合| 美国毛片一区二区三区| 成人福利视频在线看| 9191成人精品久久| 成人欧美一区二区三区1314| 亚洲电影第三页| 国产成人啪免费观看软件| 在线观看一区二区精品视频| 26uuu另类欧美| 亚洲自拍偷拍综合| 国产麻豆91精品| 欧美性生活大片视频| 国产欧美精品区一区二区三区| 香蕉成人伊视频在线观看| 国产成人aaa| 制服丝袜亚洲播放| 最新欧美精品一区二区三区| 美女在线视频一区| 欧美日韩免费一区二区三区| 日本一区二区三区免费乱视频 | 国产一区二区美女诱惑| www.日韩精品| 久久久久久久免费视频了| 亚洲一区二区三区小说| 不卡一区中文字幕| 久久日韩粉嫩一区二区三区| 日产精品久久久久久久性色| 欧美在线不卡视频| 国产精品夫妻自拍| 国产成a人无v码亚洲福利| 欧美一区二区久久久| 亚洲777理论| 在线观看免费亚洲| 亚洲精品免费一二三区| 99免费精品在线| 国产欧美一二三区| 国产精品一级片在线观看| 欧美一区二区黄色| 日本va欧美va精品| 欧美电影在哪看比较好| 五月婷婷激情综合网| 欧美少妇一区二区| 伊人色综合久久天天人手人婷| www.99精品| 成人免费在线视频观看| 91麻豆国产精品久久| 亚洲欧美国产77777| 91在线精品秘密一区二区| 最好看的中文字幕久久| 91麻豆福利精品推荐| 一区二区三区国产| 欧美日韩免费观看一区三区| 亚洲成人免费在线| 在线成人av影院| 美国欧美日韩国产在线播放| 欧美成人r级一区二区三区| 免费成人在线影院| 精品国产乱码久久久久久图片 | av色综合久久天堂av综合| 国产精品美女www爽爽爽| 99久久精品国产毛片| 亚洲日本中文字幕区| 欧美午夜片在线观看| 性做久久久久久免费观看欧美| 777亚洲妇女| 精品亚洲aⅴ乱码一区二区三区| 久久嫩草精品久久久久| 国产精品综合在线视频| 中文字幕欧美一区| 欧美色手机在线观看| 久久精品久久综合| 中文字幕在线不卡| 欧美视频在线一区二区三区| 麻豆成人91精品二区三区| 久久久www免费人成精品| jvid福利写真一区二区三区| 亚洲专区一二三| 精品美女在线播放| 9色porny自拍视频一区二区| 五月天网站亚洲| 国产欧美久久久精品影院| 欧美日韩亚州综合| 国产精品一线二线三线| 亚洲最新视频在线播放| 精品不卡在线视频| 91国产成人在线| 国产一区三区三区| 亚洲成av人片在线观看无码| 欧美国产精品专区| 91精品国产黑色紧身裤美女| 成人免费毛片高清视频| 天天色图综合网| 亚洲日本在线观看| 精品福利二区三区| 国产乱子伦视频一区二区三区| xfplay精品久久| 日韩欧美国产一二三区| 91麻豆精东视频| 精品亚洲aⅴ乱码一区二区三区| 亚洲黄色av一区| 国产日韩精品一区二区三区| 在线电影院国产精品| 色拍拍在线精品视频8848| 国产麻豆午夜三级精品| 日本美女一区二区| 亚洲精品视频免费观看| 国产免费观看久久| 久久先锋影音av| 欧美一区二区福利视频| 欧美中文字幕一二三区视频| 成人福利电影精品一区二区在线观看| 极品少妇一区二区| 蜜桃av噜噜一区二区三区小说| 亚洲福利电影网| 亚洲精品国产a| 亚洲女性喷水在线观看一区| 中文字幕亚洲区| 国产精品久久久久久久久免费相片| 欧美不卡一二三| 欧美mv日韩mv国产网站app| 91精品国产欧美一区二区18| 欧美老肥妇做.爰bbww视频| 欧美亚洲禁片免费| 欧美视频一区在线观看| 日本高清无吗v一区| 99re热视频这里只精品| av网站免费线看精品| 色综合婷婷久久| 91福利资源站| 欧美精品18+| 欧美一区二区成人6969| 精品国产三级电影在线观看| 精品sm捆绑视频| 国产精品久久久久久久久动漫| 国产精品美女久久福利网站 | 国产电影精品久久禁18| 国产伦精一区二区三区| 成人美女在线视频| av动漫一区二区| 欧洲精品一区二区| 欧美日韩精品欧美日韩精品一 | 亚洲欧美日韩中文播放| 亚洲精品乱码久久久久久日本蜜臀| 亚洲精品乱码久久久久久久久| 亚洲一区精品在线| 日产精品久久久久久久性色| 国产乱码精品一区二区三区av| 国v精品久久久网| 一本色道久久综合亚洲91| 精品视频资源站| 精品国产电影一区二区| 国产精品久久久久久久久久免费看| 尤物在线观看一区| 久久精品国产秦先生| 成人自拍视频在线观看| 欧美系列亚洲系列| 久久久精品综合| 一区二区三区美女| 精品一二三四区| 91免费在线看| 精品美女一区二区| 樱花影视一区二区| 国产乱理伦片在线观看夜一区| 色婷婷久久久久swag精品| 亚洲精品一区二区三区影院| 亚洲情趣在线观看| 六月丁香婷婷色狠狠久久| 一本大道av一区二区在线播放| 日韩欧美在线综合网| 亚洲人成影院在线观看| 国产在线播精品第三|