QT自定义槽函数报错解决办法

QT自定义槽函数报错
在一个widget中定义槽  错误:undefined reference to `Widget::setname(QString)'
源代码如下
namespace Ui {
class Widget;
}

class Widget : public QWidget
{
    Q_OBJECT
    
public:
    explicit Widget(QWidget *parent = 0);
    ~Widget();
    
private slots:
    void setname(QString s);
private:
    Ui::Widget *ui;
};

#endif // WIDGET_H
QT  自定义槽  

------解决方案--------------------
那就给它定义函数体啊
Widget::Widget(QWidget *parent):QWidget(parent){}
Widget::~Widget(){}
void Widget::setname(QString s){s==s;}