常見問題之Qt creator中訊號和槽寫法

2021-10-05 16:59:00 字數 808 閱讀 8641

在qt中,我們自己定義訊號和槽時,可能會出現兩個版本的connect。

qt 5版本中:

void

(teacher:

:*teachersignals2)()

=&teacher:

:hungry;

void

(student:

:*studentslot2)()

=&student:

:treat;

connect

(tea,teachersignals2,stu,studentslot2)

;

而在qt 4版本中:

connect(tea,signal(hungry(qstring)),stu,slot(treat(qstring)));
問題出現了:在qt 4中,引數型別,不做檢測

例如:

connect(tea,signal(hungry()),stu,slot(treat(qstring)));
訊號和槽函式的引數型別,必須一一對應。而我在除錯時,沒有報錯。執行時,報了如下錯誤:

原因是:signal()和slot()中的內容編譯器會當作字串處理,不會進行對比,能執行則執行,一旦失敗,就報這個錯誤。

Qt Creator 常見問題記錄

由於不小心刪除了工程目錄中的qrc檔案,重新加回去後,發現專案樹中resources不見了,如下圖,圖中是顯示的 解決辦法 選擇專案右鍵,清除。再重新縮放專案,即可看到。vs中可以右鍵直接選擇某個專案作為啟動項,qt creator中則沒辦法這麼做 只能右下角選擇具體專案,如下圖 刪除目錄中的bui...

JAVA之常見問題

與equals 的區別 比較的是兩個物件的位址 equals 比較的是2個物件的內容 是比較兩個 基本型別 的值是否相等,equals 是比較兩個物件是否相等。switch語句中的變數型別只能是 byte short int char string。實現多型的三個條件 繼承 重寫 向上轉型。每個方法...

Mac之常見問題

1.在命令列下無法使用ll命令 需要設定命令的別名。檔案位置 bash profile source profile export path usr local opt php 7.2 bin path export path usr local opt php 7.2 sbin path expo...