成员函数内的参数名字后面跟个*是什么意思

最后三个函数内参数后面加的*不懂
class keyboard : public QWidget
{
Q_OBJECT

public:
explicit keyboard(QWidget *parent = 0);
~keyboard();

private slots:
void disp(QAbstractButton*);
void key(QAbstractButton*);
void special(QAbstractButton*);

在函数的形参前加* 表示传入实参时需要使用指针类型

void disp(QAbstractButton*);

这里QAbstractButton是个类型,你翻翻代码,应该可以找到其定义

  • 表示参数是该QAbstractButton型的指针,因为disp()这个成员函数将对一些变量值作改动。为了让改动在disp()函数结束时依然保存,需要用指针型参数。

就是传的参数是指针类型的,函数的声明可以省略参数名不写(可以 void disp(QAbstractButton*); 也可以void disp(QAbstractButton* abBtn););
但定义式就要写参数名:
void keyboard::disp(QAbstractButton* abBtn)
{
}