造成這個錯誤的原因有很多種,網上有人總結出來,但是我遇到的這種很奇怪,而且網上沒找到和我一樣的。
我自己定義了一個類,類中包含一個私有成員,成員類型為QSerialPort,如下圖:
這樣一寫就報錯:LNK2019:無法解析的外部符號,但是如果我把serial_port改成指針則不會報錯。結果是因為如果要使用串口,則需要在.pro文件加入:“QT += serialport”這一句,如下圖:
在.pro文件中加入這句就不會報錯了。
還有一個問題,如果定義的串口類是QSerialPort是個指針,那么在程序運行時會出現內存錯誤,暫時不知道什么原因,先寫在這里,以后有機會再看看。