我在globaldata的h文件中声明了extern QMutex mutex;,为何在其他cpp文件中无法调用mutex
时间: 2024-04-12 12:29:47 浏览: 108
VS2005如何调用Matlab7定义的.m文件中的函数
在其他cpp文件中无法直接调用extern声明的变量是因为extern只是一个声明,并没有分配内存空间。在其他cpp文件中,你需要在对应的cpp文件中定义这个变量,然后才能使用它。
在你的情况下,在其他cpp文件中,需要添加以下代码来定义mutex变量:
```cpp
QMutex mutex;
```
这样就可以在其他cpp文件中使用extern声明的mutex变量了。记住,在每个cpp文件中只能有一次定义,否则会导致重复定义错误。
阅读全文