wag*_*639 5 c gtk
我的GTK应用程序中有一个打包盒,我每隔一段时间用一个全新的条目替换它(至少现在因为我赶时间).
由于我用新实例替换它,我是否需要从内存中明确地释放旧包装盒内容或者是否在GTK中有一些垃圾收集?
如果我确实需要明确需要释放该对象,是否有一个命令会以递归方式转到该树中的所有对象(就像它会清除我的主要包装盒内的盒子容器中的按钮)?那么,连接到对象的信号和处理程序呢?
我正在使用C/GTK-2.0(gcc v4.4.3和GTK 2.20.0).
unw*_*ind 7
GObjects是引用计数的.将窗口小部件打包到容器中时,容器将接管所有权.
执行此操作时gtk_container_remove(),容器保留的引用将被删除,这通常会导致窗口小部件被销毁.
gtk_container_remove()
所以不,你不应该明确地销毁它,只需从容器中删除就足够了.
该文档的gtk_container_remove()API还表示,它可以更有效地只是调用gtk_widget_destroy()直接作用于孩子,所以如果这是你已经做什么你的罚款.
gtk_widget_destroy()
归档时间:
15 年,5 月 前
查看次数:
1929 次
最近记录: