问题栏

用户名:lxd01

悬赏金:40鼠币

构造函数中变量存在周期的问题

定义了一个窗口类,在其构造函数里边定义一个按钮。用下边两种方式

1.
qpushbutton b5;
b5.setParent(this);
b5.setText("test");
b5.move(100,100);
2.
qpushbutton *b4 = new qpushbutton(this);
b4->settext("lambda");
b4->move(100,100);

第一种啥也没有 第二种可以正常显示按钮,为什么第一种不行啊

发布时间:2019-05-05
解答栏
  • 用户名:MASHEN

    构造函数只在创建对象的时候调用,调用完函数里声明的变量就销毁了。你看到窗口的时候这个窗口的构造函数早就运行结束了,所以第一个不行
    new创建的变量只有调用delete或者程序关闭才会销毁,所以第二个能看到按钮

    发布时间:2019-05-05
  • 用户名:腾龙杨杰

    构造函数只在创建对象的时候调用,调用完函数里声明的变量就销毁了。你看到窗口的时候这个窗口的构造函数早就运行结束了,所以第一个不行
    new创建的变量只有调用delete或者程序关闭才会销毁,所以第二个能看到按钮  

    发布时间:2019-05-22



撰写答案
请登录后再回答