C++Qtnew的指针如何子头文件中定义为全局变量
时间: 2024-03-09 10:50:36 浏览: 85
在头文件中定义全局变量可以使用 `extern` 关键字,然后在实现文件中再进行定义。对于指针变量,需要注意在定义时需要进行初始化,否则可能会出现野指针的问题。
例如,如果要在头文件中定义一个名为 `myPointer` 的指针变量,可以按照以下步骤操作:
1. 在头文件中声明 `myPointer` 为 `extern` 类型:
```cpp
// myheader.h
#ifndef MYHEADER_H
#define MYHEADER_H
#include <QObject>
extern QObject *myPointer;
#endif // MYHEADER_H
```
2. 在实现文件中进行定义和初始化:
```cpp
// mycpp.cpp
#include "myheader.h"
QObject *myPointer = nullptr;
// other implementation code
```
这样就可以在程序中使用 `myPointer` 全局变量了。需要注意的是,如果要在多个文件中使用同一个全局变量,需要在每个文件中都进行 `extern` 声明,并且只能在一个文件中进行定义和初始化。
阅读全文