나는 gtk를 배우기 시작했다. 그리고 레퍼런스 매뉴얼을 브라우징 할 때 "typedef struct _GtkWidget GtkWidget"과 같은 많은 typedef를 발견했습니다. 나는 typedef를 알고 있지만, 나는이 문장들의 의미를 이해하지 못한다. 누가 말해 줄 수 있니? 감사!일부 gtk typedef 사용
1
A
답변
2
은 구현 세부 사항을 숨기는 것을 의미합니다. typedef는 GtkWidget
을 opaque data type으로 만듭니다 (실제 struct _GtkWidget
은 Gtk + 3.0 이상에서 헤더에 표시되지 않습니다). 구조체의 실제 구성 요소는 응용 프로그램에서 사용할 때 숨겨집니다. 구성 요소 구조 멤버를 조작하려면 접근 자 함수를 사용해야합니다. 이렇게하면 구현이 변경 되어도 응용 프로그램을 다시 작성할 필요가 없습니다.
희망이 도움이됩니다.
0
단순히 "struct _GtkWidget"에 다른 이름 인 GtkWidget을 제공합니다. 네가 나에게 묻는다면 그것은 네임 스페이스를 오염시키기 때문에 전혀 의미가 없다.
관련 문제
- 1. 함수에 typedef 사용
- 2. 헤더 파일에 typedef 사용
- 3. gtk + : GtkFileChooserDialog 일부 위젯 숨기기
- 4. Google 클로저의 @typedef 태그 사용
- 5. 정교한 지정자에서 typedef 이름 사용
- 6. GTK # 위젯에서 제네릭 사용
- 7. typedef 내의 typedef
- 8. .NET DLL에서 typedef 내보내기
- 9. 기본 클래스의 파생 클래스 'typedef 사용
- 10. Gtk # Themes, GTK-Wimp
- 11. Typedef 일반화
- 12. typedef struct
- 13. 재귀 typedef
- 14. 루핑 typedef
- 15. typedef enum, 값을
- 16. Gtk +
- 17. GTK +
- 18. gtk +
- 19. MonoDevelop/GTK OS X 사용 편의성 문제?
- 20. gtk/glade in vala 사용 방법
- 21. Gtk 드로잉 영역 위에있는 Gtk 버튼
- 22. 내장 유형에 typedef (또는 #define) 사용 - 현명한 이유는 무엇입니까?
- 23. omnicppcomplete가 typedef 구문을 지원합니까?
- 24. gtk #은 gtk 3.0을 지원합니까?
- 25. GTK, GTK +, GTK + 3, PyGobject 등에서 완전히 혼동 됨
- 26. typedef 된 클래스를 어떻게 전달합니까?
- 27. 전달 선언성 및 결과 콜백에 대한 typedef 대신 상속 사용
- 28. 부스트 문자열 알고리즘을 사용하여 CString 사용 - 하나의 typedef 줄이기?
- 29. typedef 열거 형의 남용 또는 남용입니까 (정적 내용이있는 UITableView에서 사용)
- 30. VIPS 알고리즘을 구현하는 방법 gtk webkit을 사용 하시겠습니까?
그게 중요한 부분입니다. 고마워요! – sniweef