小编Iri*_*ces的帖子

Qt和指针

我是Qt的新手,我正在阅读几个Qt项目以获得基础知识.在浏览不同的类时,似乎总是使用指向QWidget的指针.

例如:

class ExempleWidget : public QWidget
{
    Q_OBJECT
public:
    ExempleWidget();
    ~ExempleWidget();

private:
    QPushButton * m_stopButton;
    QPushButton * m_playButton;

    QHBoxLayout * m_hBoxLayout;
    QVBoxLayout * m_vBoxLayout;
};
Run Code Online (Sandbox Code Playgroud)

是否有任何理由使用指针'QPushButton'*'QHBoxLayout'*等?我们可以只使用价值观,所以我们不必费心去'新'和'删除'?嗯,我知道我们可以,但这是一个很好的方法吗?

例如

private:
    QPushButton m_stopButton;
Run Code Online (Sandbox Code Playgroud)

编辑:

所有答案似乎都指出了Qt类之间的层次结构.这对我来说是一个足够好的理由,我不怀疑这一点,但是让我们说我班级的小部件之间没有联系(*m_stopButton*和*m_playButton*).

在这种情况下我可以安全地将它们声明为值,不是吗?当类被删除时,成员也将被删除,所以指针与否我们将具有相同的行为.

c++ qt pointers

8
推荐指数
3
解决办法
2804
查看次数

标签 统计

c++ ×1

pointers ×1

qt ×1