深入信号与槽
1:信号与槽是qt编程的基础
2:槽和普通的C++成员函数几乎是一样的,唯一不同的是:槽还可以和信号连接在一起
connect(sender, SIGNAL(signal), receiver, SLOT(slot));
sender和receiver是指向QObject的指针,signal和slot是不带参数的函数名
3:
一个信号可以连接多个槽,在发射这个信号的时候,会以不确定的顺序一个接一个地调用这些槽
多个信号可以连接同一个槽,无论发射的是哪一个信号,都会调用这个槽
一个信号可以与另外一个信号相连接,当发射第一个信号时,也会发射第二个信号。
4:连接可以被移除
disconnect(lcd, SIGNAL(overflow()),this, SLOT(hand()));
5:信号与槽的参数必须具有相同的顺序和相同的类型,如果信号的参数比它所连接的槽的参数多,那么多余的参数将会被简单的忽略掉
附加小知识:
qt的元对象系统,它提供了关键的俩项技术:信号-槽以及内省