2013-10-15 3 views
3

클래스 객체을 GObject/Gtk에서 어떻게 가져 옵니까? 예를 들어, 내 클래스가 GtkSpinButton 인 경우 클래스를 나타내는 GtkSpinButtonClass의 인스턴스를 가져 오려고합니다.GObject 유형의 클래스 구조 인스턴스 가져 오기

gtk_spin_button_class_init (GtkSpinButtonClass *class) 

에있는 매개 변수 "클래스"이며 가상 함수가 저장되는 대상입니다. GtkSpinButton 인스턴스가있을 때 전화 할 수 있습니다.

GtkSpinButtonClass *class = GTK_SPIN_BUTTON_GET_CLASS (instance) 

그러나 인스턴스가 없습니다. GTK_TYPE_SPIN_BUTTON은 클래스 객체가 아닌 유형 ID, 숫자를 제공합니다. 실제 인스턴스를 얻는 방법에 대한 아이디어가 있습니까?

답변

5

당신은 g_type_class_ref

GtkSpinButtonClass *klass = g_type_class_ref(GTK_TYPE_SPIN_BUTTON); 

를 사용하려면 당신은

g_type_class_unref(klass); 
을 완료하면
관련 문제