cppGhost

Возвращаемое значение-массив

Всех приветствую. Моя многострадальная функция с++ в конце возвращает массив объектов. Делаю это так

int func(void *retValue)
{
   .....
   res = (tag_t*) malloc( vecResult.size() * sizeof(tag_t) );

   for(int i=0; i<vecResult.size(); i++)
         res[i] = vecResult[i];

   USERSERVICE_return_tag_array(res, vecResult.size(), (USERSERVICE_array_t*)retValue);	
}

на стороне java идет такой ее вызов

 Object res =  endItem.getSession().getUserService().call("func", objs);

И мне казалось, что в res теперь должен быть массив объектов. Но там лишь число, равное количеству объектов в массиве. Что я не так делаю? Спасибо)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Как регистрируете (USERSERVICE_register_method)?

а точно Object res имеет тип Int?
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всех приветствую. Моя многострадальная функция с++ в конце возвращает массив объектов. Делаю это так

int func(void *retValue)
{
   .....
   res = (tag_t*) malloc( vecResult.size() * sizeof(tag_t) );

   for(int i=0; i<vecResult.size(); i++)
         res[i] = vecResult[i];

   USERSERVICE_return_tag_array(res, vecResult.size(), (USERSERVICE_array_t*)retValue);	
}

на стороне java идет такой ее вызов

 Object res =  endItem.getSession().getUserService().call("func", objs);

И мне казалось, что в res теперь должен быть массив объектов. Но там лишь число, равное количеству объектов в массиве. Что я не так делаю? Спасибо)

 

-------------------------------

 TCComponent[] return_data = (TCComponent[]) userService.call(itk_function, input_args);  

-------------------------------------

int return_data = USERARG_TAG_TYPE + USERARG_ARRAY_TYPE;

-----------------------------------------------------

 ifail = USERSERVICE_return_tag_array(obj_array, n_objs, USERSERVICE_array_t *) return_data);   

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всем спасибо. Дело действительно было в 

int return_data = USERARG_TAG_TYPE + USERARG_ARRAY_TYPE;

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

  • Реклама

  • Ближайшие события

    Предстоящих событий не найдено
  • Дни рождения сегодня

    1. aerocarenaife
      aerocarenaife
      (41 год)
    2. aivina_gala
      aivina_gala
      (39 лет)
    3. Aleksei Zenko
      Aleksei Zenko
      (28 лет)
    4. Andrey_SH
      Andrey_SH
      (38 лет)
    5. BMSTUsan
      BMSTUsan
      (31 год)
    Просмотреть все