新建類小寫,報錯.cpp中標頭檔案缺失,或者建構函式缺失
kimi答案
如果自定義的類名為Command
,並且它是小寫的,那麼它預設情況下並不會繼承自QObject
。在Qt中,繼承自QObject
的類可以獲得許多Qt框架提供的特性,比如訊號和槽機制、事件處理、以及動態屬性系統等。如果你希望Command
類擁有這些特性,你需要在類定義中明確地繼承自QObject
。
以下是如何定義一個繼承自QObject
的Command
類的示例:
// Command.h #ifndef COMMAND_H #define COMMAND_H #include <QObject> class Command : public QObject { Q_OBJECT public: explicit Command(QObject *parent = nullptr); // 其他成員函式和變數... }; #endif // COMMAND_H
cpp
在這個標頭檔案中,Command
類透過public QObject
繼承自QObject
,幷包含了Q_OBJECT
宏,這個宏是必須的,因為它啟用了Qt的元物件系統。
如果你的Command
類不需要任何QObject
的特性,那麼它就不需要繼承自QObject
。在這種情況下,你的類可以定義為一個普通的C++類:
1標頭檔案
2原始檔