C:\Users\15345\Desktop\study\QT\HTTP_URL\mainwindow.cpp:52: error: No matching member function for call to 'connect'
时间: 2023-08-21 21:03:10 浏览: 156
这个错误通常是由于 Qt 的信号与槽连接出现问题引起的。在你的代码中,第52行的 `connect` 函数调用没有找到匹配的成员函数。
请确保以下几点:
1. 检查 `connect` 函数的参数是否正确。信号和槽的参数类型和数量应该匹配。
2. 确保信号和槽都是有效的成员函数。检查函数名和参数是否正确拼写。
3. 检查信号和槽的对象是否正确。确保对象已经正确实例化。
4. 确保信号和槽的访问权限正确。如果信号或槽是私有的,确保在连接之前进行了适当的访问权限设置。
5. 如果你使用的是自定义信号或槽,确保已经正确声明和定义了它们。
如果你能提供更多的代码和错误信息,我可以给出更具体的帮助。
相关问题
qt D:\qtdemo\test\mainwindow.cpp:2: error: './ui_mainwindow.h' file not found
这个错误通常表示在编译过程中没有找到名为 "ui_mainwindow.h" 的文件。在使用 Qt 进行开发时,通常会有一个与 UI 相关的头文件,该文件通过 Qt 的用户界面设计工具生成。请确保在 `mainwindow.cpp` 文件中正确地包含了 `ui_mainwindow.h` 文件。你可以检查以下几点:
1. 确保在 `mainwindow.cpp` 文件的开头包含了正确的头文件:
```cpp
#include "ui_mainwindow.h"
```
2. 确保 `ui_mainwindow.h` 文件存在于你的项目中,并且位于正确的位置。通常,该文件会由 Qt 设计工具生成,并与 `mainwindow.cpp` 文件位于同一目录下。
3. 如果你使用 CMake 或 qmake 等构建工具来构建你的项目,请确保正确地配置了相关的构建文件,以确保能够找到 `ui_mainwindow.h` 文件。
如果你仍然遇到问题,请提供更多的代码和项目结构信息,以便我能够更好地帮助你解决问题。
C:\Users\22836\Desktop\QT\untitled1\mainwindow.cpp:27: error: No matching member function for call to 'push_back'
这个错误是因为你使用了错误的语法来调用push_back函数。
在C++中,push_back是一个成员函数,需要使用成员访问运算符(`.`)而不是使用函数调用运算符(`()`)来调用它。
修改代码如下:
```cpp
connect(ui->checkBox, &QCheckBox::stateChanged, [=](int state){
qDebug() << state << endl;
if (state == 2) {
strList.push_back(this->ui->checkBox->text());
}
//state 2选中 0未选中
});
```
请确保你在代码中正确使用成员访问运算符(`.`)来调用类的成员函数。这样就能够正确地调用push_back函数将文本添加到strList中了。
阅读全文