哪个写在头文件里哪个写在widget里面呢
时间: 2024-10-10 17:14:34 浏览: 14
异形窗体.zip
在Qt中,关于类和功能的声明和定义,一般有以下规则:
1. **声明(Declaration)**:这部分放在`.h`(header)文件中。它包含类、函数、常量等的原型,即它们的名称、类型以及返回类型。这是为了在项目的不同部分共享信息,让其他文件可以知道某个东西的存在。
例如,在`.h`文件中:
```cpp
// MyClass.h
class MyClass {
public:
int myFunction(int arg);
static const int MY_CONSTANT;
};
```
2. **定义(Definition)**:这部分通常放在`.cpp`(source)文件中。它包含了类的具体实现,如函数体和成员变量的初始化。头文件中的声明只提供了一个模板,真正的实现要在对应的源文件中完成。
例如,在`.cpp`文件中:
```cpp
// MyClass.cpp
int MyClass::myFunction(int arg) {
// ...
}
const int MyClass::MY_CONSTANT = 100; // 或者在类的构造函数中初始化
```
注意:如果类的内容相对简单,没有依赖于其他复杂的类或数据结构,那么可以在`.h`文件中同时进行声明和定义,这被称为内联实现(in-line implementation)。但这不是推荐做法,因为大型类最好分开处理,以保持清晰和易于维护。
阅读全文