mam coś takiego:Dostęp tablicę wskaźników w ramach struktury z Java z SWIG
typedef struct {
char * content;
} Boo;
typedef struct {
Boo **data;
int size;
} Foo;
chcę przekonwertować Boo ** data
do tablicy z Boo
elementów (Boo[]
) w Javie z SWIG. A następnie odczytać tablicę (nie chcę edytować, usuwać i tworzyć nowej tablicy z kodu Java). W dokumentacji SWIG opisano, jak to zrobić z carrays.i
i array_functions
, ale element struktury użytkownika musi być typu Boo*
. Czy istnieje rozwiązanie mojego problemu?
EDIT: Spieszyłem się i zapomniałem napisać, że chcę wygenerować klasy Java z SWIG do współpracy ze strukturami C.
Dopóki nie dodasz długości do 'Foo', brzmi to zupełnie niemożliwe, ponieważ nie możesz magicznie wydedukować długości z samego wskaźnika. – unwind
@unwind Przepraszam, zapomniałem dodać członka "size". Mam edytować moje pytanie. –
Załóżmy, że masz więcej niż 3 elementy w strukturze danych. Jak uzyskać dostęp do trzeciego elementu? Załóżmy, że masz obiekt 'Foo x' z' x.size> = 3'. – pmg