this指针的一个小问题,求大神解答下,谢谢。

炫彩灵感 2015-08-31 12:43:15
void Dialog::paintEvent(QPaintEvent *e)
{
QPainter pait(this);//这里加了this
pait.drawLine(0,0,100,100);
QPen mypen(Qt::black);
mypen.setWidth(6);

QPoint p1;//像这种就没加
p1.setX(10);
p1.setY(10);

QPoint p2;
p2.setY(100);
/ p2.setX(100);

pait.setPen(mypen);
pait.drawLine(p1,p2);



}

具体都在什么时候加this呢?有的一声明一个他就加了,有的就不加。有没有规律?感觉好迷茫,新手求教。
还有就是类声明的时候,有的用new声明,有的比如这里的QPoint他就不用new,为什么呢?有规律吗?
...全文
188 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Inhibitory 2015-08-31
  • 打赏
  • 举报
回复
局部变量和成员变量同名时加
dext 2015-08-31
  • 打赏
  • 举报
回复
没有一个说到 点子上的,这个必须加!! 是因为 QPainter 要知道 在那个 QPaintDevice 上 画图。 你这个 困惑 和 问题 很好,其实,你只要 看看 函数 原型 就好了,可加可 不加的 都有会 默认参数 = 0 之类的。 这个 QPainter 没有, 只有 两个 构造函数 QPainter() QPainter(QPaintDevice * device) 使用 第一个的时候 在画图前 必须调用 begin(QPaintDevice * device) 那些 可有可无的 构造函数一般都是这样 QObject::QObject(QObject * parent = 0) QWidget::QWidget(QWidget * parent = 0, Qt::WindowFlags f = 0)
GreenArrowMan 2015-08-31
  • 打赏
  • 举报
回复
子对象是否一定要随着父对象的销毁而销毁,需要则加this
未狂 2015-08-31
  • 打赏
  • 举报
回复
举个形象的例子 一个类class T,我们把它假设为“办公楼” 那么办公楼里的所有人、物、部门,就是这个Class T的成员变量、成员函数 当我们站在办公楼外面的时候,我们如果想要指定办公楼内(T)的某个成员时候,我们会说: 去办公楼里找XXX(去类class T里找某个成员函数、变量) 但是,当我们站在办公楼里(在class T里进行编码的时候) 我们会直接说: 去找这栋楼里的XXX(也就是this->XXX)
jiqiang01234 2015-08-31
  • 打赏
  • 举报
回复
主要是看,是否需要父类管理子类的生存周期

16,211

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧