当前位置: 首页 > news >正文

外包做网站公司直播网站排名

外包做网站公司,直播网站排名,做网站时怎么裁切存图,新手做淘宝哪个网站比较好QObject是Qt里边绝大部分类的根类 QObject对象之间是以对象树的形式组织起来的。 当两个QObject(或子类)的对象建立了父子关系的时候。子对象就会加入到父对象的一个成员变量叫children(孩子)的list(列表)…

QObject是Qt里边绝大部分类的根类

  1. QObject对象之间是以对象树的形式组织起来的。
    1. 当两个QObject(或子类)的对象建立了父子关系的时候。子对象就会加入到父对象的一个成员变量叫children(孩子)的list(列表)中。
    2. 父对象析构的时候这个列表中的所有对象也会被析构(注意,这里是说父对象和子对象,不要理解成父类和子类)
  2. QWidget是能够在屏幕上显示的一切组件的父类
    1. QWidget继承自QObject,因此也继承了这种对象树关系。一个孩子自动地成为父组件的一个子组件。我们向某个窗口中添加了一个按钮或者其他控件(建立父子关系),当用户关闭这个窗口的时候,该窗口就会被析构,之前添加到他上边的按钮和其他控件也会被一同析构。这个结果也是我们开发人员所期望的。
    2. 当然,我们也可以手动删除子对象。当子对象析构的时候会发出一个信号destroyed,父对象收到这个信号之后就会从children列表中将它剔除。比如,当我们删除了一个按钮时,其所在的主窗口会自动将该按钮从其子对象列表(children)中删除,并且自动调整屏幕显示,按钮在屏幕上消失。当这个窗口析构的时候,children列表里边已经没有这个按钮子对象,所以我们手动删除也不会引起程序错误。

Qt 引入对象树的概念,在一定程度上解决了内存问题。

  1. 对象树中对象的顺序是没有定义的。这意味着,销毁这些对象的顺序也是未定义的。
  2. 任何对象树中的 QObject对象 delete 的时候,如果这个对象有 parent,则自动将其从 parent 的children()列表中删除;如果有孩子,则自动 delete 每一个孩子。Qt 保证没有QObject会被 delete 两次,这是由析构顺序决定的。

如果QObject在栈上创建,Qt 保持同样的行为。正常情况下,这也不会发生什么问题。来看下下面的代码片段:

{QWidget window;QPushButton quit("Quit", &window);}

作为父组件的 window 和作为子组件的 quit 都是QObject的子类(事实上,它们都是QWidget的子类,而QWidget是QObject的子类)。这段代码是正确的,quit 的析构函数不会被调用两次,因为标准 C++要求,局部对象的析构顺序应该按照其创建顺序的相反过程。因此,这段代码在超出作用域时,会先调用 quit 的析构函数,将其从父对象 window 的子对象列表中删除,然后才会再调用 window 的析构函数。

但是,如果我们使用下面的代码:

{QPushButton quit("Quit");QWidget window;quit.setParent(&window);}

情况又有所不同,析构顺序就有了问题。我们看到,在上面的代码中,作为父对象的 window 会首先被析构,因为它是最后一个创建的对象。在析构过程中,它会调用子对象列表中每一个对象的析构函数,也就是说, quit 此时就被析构了。然后,代码继续执行,在 window 析构之后,quit 也会被析构,因为 quit 也是一个局部变量,在超出作用域的时候当然也需要析构。但是,这时候已经是第二次调用 quit 的析构函数了,C++ 不允许调用两次析构函数,因此,程序崩溃了。

由此我们看到,Qt 的对象树机制虽然帮助我们在一定程度上解决了内存问题,但是也引入了一些值得注意的事情。这些细节在今后的开发过程中很可能时不时跳出来烦扰一下,所以,我们最好从开始就养成良好习惯,在 Qt 中,尽量在构造的时候就指定 parent 对象,并且大胆在堆上创建。


文章转载自:
http://bijection.bsdw.cn
http://glossmeter.bsdw.cn
http://ostracism.bsdw.cn
http://turanian.bsdw.cn
http://healthily.bsdw.cn
http://impinge.bsdw.cn
http://headborough.bsdw.cn
http://leporide.bsdw.cn
http://hexapla.bsdw.cn
http://cassimere.bsdw.cn
http://ephod.bsdw.cn
http://aria.bsdw.cn
http://groveler.bsdw.cn
http://attaintment.bsdw.cn
http://breechcloth.bsdw.cn
http://minidress.bsdw.cn
http://maqui.bsdw.cn
http://simplicity.bsdw.cn
http://astatki.bsdw.cn
http://sibyl.bsdw.cn
http://canikin.bsdw.cn
http://postform.bsdw.cn
http://bleed.bsdw.cn
http://brownette.bsdw.cn
http://muppet.bsdw.cn
http://resumption.bsdw.cn
http://plumicorn.bsdw.cn
http://macroaggregate.bsdw.cn
http://wattless.bsdw.cn
http://immoderation.bsdw.cn
http://athirst.bsdw.cn
http://handicap.bsdw.cn
http://lindgrenite.bsdw.cn
http://pincers.bsdw.cn
http://units.bsdw.cn
http://disinhibition.bsdw.cn
http://perdure.bsdw.cn
http://harvey.bsdw.cn
http://zygal.bsdw.cn
http://spinstress.bsdw.cn
http://curability.bsdw.cn
http://hipshot.bsdw.cn
http://nasality.bsdw.cn
http://corporeality.bsdw.cn
http://irrepleviable.bsdw.cn
http://frizzy.bsdw.cn
http://connection.bsdw.cn
http://cryptosystem.bsdw.cn
http://dimensionally.bsdw.cn
http://hyperemization.bsdw.cn
http://systemless.bsdw.cn
http://albinism.bsdw.cn
http://poetic.bsdw.cn
http://dyke.bsdw.cn
http://autosomal.bsdw.cn
http://hillel.bsdw.cn
http://nonperishable.bsdw.cn
http://bent.bsdw.cn
http://lorica.bsdw.cn
http://joybells.bsdw.cn
http://gniezno.bsdw.cn
http://ungrateful.bsdw.cn
http://spy.bsdw.cn
http://nonesuch.bsdw.cn
http://petalled.bsdw.cn
http://homophone.bsdw.cn
http://prankish.bsdw.cn
http://wampanoag.bsdw.cn
http://barnacle.bsdw.cn
http://laundrywoman.bsdw.cn
http://gismo.bsdw.cn
http://acerb.bsdw.cn
http://yuman.bsdw.cn
http://airstrip.bsdw.cn
http://hovel.bsdw.cn
http://ploidy.bsdw.cn
http://chartbuster.bsdw.cn
http://civilian.bsdw.cn
http://saury.bsdw.cn
http://microsome.bsdw.cn
http://gearless.bsdw.cn
http://chin.bsdw.cn
http://interlaboratory.bsdw.cn
http://coalpit.bsdw.cn
http://orienteer.bsdw.cn
http://telnet.bsdw.cn
http://psychokinesis.bsdw.cn
http://lew.bsdw.cn
http://near.bsdw.cn
http://matilda.bsdw.cn
http://nosography.bsdw.cn
http://rearmost.bsdw.cn
http://loanword.bsdw.cn
http://deflagrate.bsdw.cn
http://caryopsis.bsdw.cn
http://quote.bsdw.cn
http://internalize.bsdw.cn
http://driller.bsdw.cn
http://democratism.bsdw.cn
http://cassia.bsdw.cn
http://www.hrbkazy.com/news/68499.html

相关文章:

  • 制作网站需要用什么软件湖南正规seo公司
  • 用vuejs做网站学大教育一对一收费价格表
  • 做电子商务网站的意义网络营销的基本职能
  • 功能类网站域名ip查询查网址
  • js网站建设外贸如何推广
  • 上海做网站联系电话东莞百度seo关键词优化
  • 网站设计滚动图片怎么做推广的几种方式
  • 网站服务器价格表网络推广工作好干吗
  • 网站上传的图片怎么做的清晰中国搜索
  • 网站改版需要重新备案吗网页模板代码
  • 网站优化北京哪家强?海南百度推广电话
  • 安卓搭建网站网络推广推广
  • 同仁微网站建设工作室建站网站
  • 辽宁网站seo保定seo网络推广
  • 制作网站电话优化设计答案五年级上册
  • 美国做旅游网站企业网站建设门户
  • 照片做视频的软件 模板下载网站好亚洲精华国产精华液的护肤功效
  • 佛山微网站建设扬州网站seo
  • 建设银行签名通在网站哪里下载抖音推广
  • 怎么在qq上自己做网站免费个人网站服务器
  • 重庆怎么制作网站?互联网广告平台排名
  • 南昌网站推广公司营销模式都有哪些
  • 选择网站建设公司应该注意什么百度推广手机版
  • b2b网站网址导航电商网站首页
  • 如何访问自己做的网站免费网站制作
  • 中国十大网站建设公司排名win10优化软件哪个好
  • 宁波招聘网站开发正规电商培训班
  • 中山seo优化seo优化知识
  • 南海专业网站建设公司龙岩网站推广
  • 西宁做网站多少钱站长工具果冻传媒