C++ 11 个标准 - 初始化标头中的成员变量



是否需要在头文件中使用 nullptr 或 Q_NULLPTR 初始化成员变量?如果是,为什么需要它,当我正确初始化它时,ctor 初始化列表。

在MyDialog.h中,

QDialog* m_Dialog = Q_NULLPTR;

在"我的对话".cpp...我愿意

MDialog()::MDialog()
  : QDialog()
  , m_Dialog(new QDialog())
  { 
  }

在析构函数中,我正确地删除了 n 将其设置为 nullptr。

为什么需要以下内容?

QDialog* m_Dialog = Q_NULLPTR;
不需要

使用

QDialog* m_Dialog = Q_NULLPTR;

初始化成员变量。

当有许多构造函数需要在其中使用相同的值初始化成员变量时,上述语法形式很有用。它减少了重复代码。

如果您的类具有您发布的唯一构造函数,则可以将成员变量声明保留为

QDialog* m_Dialog;

不会对您的程序产生负面影响。

相关内容

  • 没有找到相关文章