31

尽管进行了一些搜索,但我还是找不到使用 QT Creator 2.3.1 为 C++ 类自动生成 getter 和 setter 的方法。你们知道有什么方法吗?

4

4 回答 4

51

然后右键单击您的成员,Refactor然后Generate Getter and Setter member function您就完成了:)

例子


在 Qt Creator 3.2.x 上,创建成员,然后单击它并按alt+ Enter

在此处输入图像描述

于 2013-11-01T15:04:10.777 回答
21

将文本光标定位在类定义中的成员变量上,然后按 Alt+Enter。

于 2013-11-01T15:09:51.833 回答
0

使用宏,可以一起创建 getter、setter 和信号,如下所示:

#define GETSET(type, var) \
  protected: \
    type m##var; \
  public: \
    type Get##var() const \
    {\
      return m##var; \
    }\
    void Set##var(type iVal) \
    {\
      m##var = iVal; \
      var##Changed(iVal); \
    }

并调用宏:

class Student : QObject
{
  Q_OBJECT
  public signals:
    void NameChanged(const QString & name);
    void AddressChanged(const QString & address);
    void BirthDateChanged(const QDate & date);

  GETSET(QString, Name)
  GETSET(QString, Address)
  GETSET(QDate, BirthDate)
}
于 2020-06-25T16:17:04.483 回答
0

对我来说,右键单击、重构、创建 Getter 和 Setter 成员函数都有效,除非成员是布尔值。

于 2018-04-27T13:49:49.597 回答