Привязка данных gsoap, как получить доступ к последовательности в файле .h, сгенерированном gsoap - PullRequest
0 голосов
/ 30 ноября 2010

Я понятия не имею, как получить доступ к FilenameType_sequence

class ns1__FilenameType
{ 
 public:

   // SEQUENCE OF ELEMENTS <xs:sequence minOccurs="1" maxOccurs="unbounded">
    $int                                  __size_FilenameType_sequence   1;  
    class __ns1__FilenameType_sequence
    {   
       // std::string with length 1
       std::string filename                       1;
    }                                   *__FilenameType_sequence       ;
    //  END OF SEQUENCE
    // A handle to the soap struct that manages this instance (automatically set)
    struct soap                         *soap                          ;
};

Я попытался использовать его новую функцию, а затем установить ns1_ FilenameType -> _FilenameType_sequence = для моего нового объекта, но это не такработа.

ns1__FilenameType_sequence * fnSeq = soap_new__ns1__FilenameType_sequence(soap, -1);
fnSeq->filename = "Name";
s1__FilenameType->__FilenameType_sequence = fnSeq;

Я также думал, что, возможно, функция .push_back будет работать, но первоначальное тестирование не удавалось.Так что теперь у меня нет идей.Любые новые будут с благодарностью.Дайте мне знать, если вам нужна дополнительная информация

Спасибо

Джош

1 Ответ

1 голос
/ 10 декабря 2010

В случае, если у вас возникла та же проблема, что и у меня, код выглядит следующим образом:

ns1__FilenameType_sequence * fnSeq = soap_new__ns1__FilenameType_sequence(soap, 2);
fnSeq[0].filename = "Becky";
fnSeq[1].filename = "Jen";
fnSeq[1].filename = "Cindy";

ns1__FilenameType->__size_FilenameType_sequence = 3;
ns1__FilenameType->__FilenameType_sequence = fnSeq;

так что это интуитивно понятно, но не совсем, надеюсь, это поможет

...