吴天德少侠 2017-11-15 13:41 采纳率: 50%
浏览 19184

QT中编译时出现的undefined reference to 的问题

我在用QT creator想写一个串口通信程序时,跟很多人一样也是
D:\documents\HelloSerialPort\mainwindow.cpp:20: error: undefined reference to SPComm::isOpen() const
D:\documents\HelloSerialPort\debug\mainwindow.o:-1: In function `ZN10MainWindow23on_pushButton_2_clickedEv':
D:\documents\HelloSerialPort\mainwindow.cpp:30: error: undefined reference to `SPComm::isOpen() const'
看网上说是在pro文件中添加类所在的目录,可是我怎么知道它是哪个目录呢?完全不懂啊,求教!下面是我的文件

//mainwindow.h

 #ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include "SPComm.h"

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

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

private slots:
    void on_pushButton_clicked();

    void on_pushButton_2_clicked();

private:
    Ui::MainWindow *ui;
    SPComm *m_spcomm;
};

#endif // MAINWINDOW_H

spcomm.h

 #ifndef SPCOMM_H
#define SPCOMM_H

#include <QObject>
#include <QtSerialPort/QtSerialPort>

class SPComm : public QObject
{
    Q_OBJECT
public:
    explicit SPComm(QObject *parent = 0);

    ~SPComm();
    bool isOpen() const;

        void setPortName(const QString &name);
        QString portName() const;

        void setBaudRate(int baudRate);
        int baudRate() const;

        virtual bool open();
        virtual void close();
        virtual bool clear();

        int readData(char *buffer, int count, int timeout = 1000);
        int writeData(char *data, int size);
        int write(char ch);

    protected:
        QString m_portName;
        int m_baudRate;
        QSerialPort *m_serialPort;
signals:

public slots:
};

#endif // SPCOMM_H
  • 写回答

5条回答

  • 电机与控制 2018-03-18 10:30
    关注

    增加下面段语句
    bool SPComm::isOpen() const
    {
    if(m_serialPort->isOpen())
    return true;
    else
    return false;
    }

    评论

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置