gsoap linux c ++ / struct失败传递

时间:2015-04-06 04:29:24

标签: c++ linux gsoap

char int,返回值传递良好。

struct 传递失败。

服务器:

soapcpp2 -2 -SLix ...

客户端:

wsdl2h -f -s -o ... ...
soapcpp2 -i -C ...

struct{
  char * value;
}USER_ITEM

服务器:

int Service::GetValue(struct USER_ITEM * item)
{
  item->value = new char[100];
  item->value = "example";
}

客户端:

....
ns2__useritemresponse user;
proxy.Getvalue(user)
user.user_item->value  // user.user_item address is null;
....

窗户很好。但不是在Linux c ++上。

采用与上述相同的格式。

我是否需要一组单独的选项?

如果您怀疑零件,请提供帮助。

对不起,我的英语说得不好。

感谢阅读。

1 个答案:

答案 0 :(得分:1)

您不能使用赋值运算符复制char指针,这不是std :: string:

item->value = new char[100];
strcpy(item->value, "example");