Как использовать мой собственный объект GObject с программами на C ++ - PullRequest
0 голосов
/ 15 августа 2011

Я хотел бы знать, как я могу использовать мои собственные созданные объекты GObject с моим кодом на C ++.

У меня есть простая библиотека, скомпилированная в C, которая определяет объект GObject, я хотел бы использовать этот объект, определенныйтам в моем коде c ++.

Я видел здесь несколько примеров http://developer.gnome.org/gtkmm-tutorial/3.0/sec-basics-gobj-and-wrap.html.en,, где документация учит, как получить объект Gobject из функции API C GTK +.

Я бынравится делать то же самое, но используя объект, созданный из моей библиотеки.

Спасибо.

1 Ответ

0 голосов
/ 15 августа 2011

Вы всегда можете расширить их класс GObject и использовать его в качестве оболочки, но дело в том, что библиотека GTK + использует GObject для внутреннего использования. Я не знаю, почему вы захотите заменить его (и может возникнуть жалоба на то, что вы переопределилигде-то символ или не позволит вам вызывать какие-либо методы с использованием вашего пользовательского объекта в качестве параметра, так как типы не будут совпадать, если вы его расширите).

Если вы хотите использовать его в качестве оболочки, вам следуетрасширьте GObject и напишите конструктор, который принимает GObject (и любые другие необходимые вам вещи), и просто оборачивайте GObject в свой пользовательский класс каждый раз, когда он требуется.

...