'void QAbstractButton::clicked(bool)'受到保护
'void QAbstractButton::clicked(bool)' is protected
我实际上正在用Qt 5.10.1做一个项目。我正在使用Linux,我的合作伙伴正在使用Windows。
我们编写了这段代码:
QCheckBox* _survive[9] = {
ui->survive0, ui->survive1, ui->survive2, ui->survive3,
ui->survive4, ui->survive5, ui->survive6, ui->survive7, ui->survive8
};
QCheckBox* _born[9] = {
ui->born0, ui->born1, ui->born2, ui->born3,
ui->born4, ui->born5, ui->born6, ui->born7, ui->born8
};
std::copy_n(_survive, 9, survive); // because arrays are not directly assignable
std::copy_n(_born, 9, born);
for (int i = 0; i < 9; i++) {
connect(born[i], &QCheckBox::clicked, this, &Automate_2D::on_born_i_clicked);
connect(survive[i], &QCheckBox::clicked, this, &Automate_2D::on_survive_i_clicked);
}
哪里survive0
..survive8
和born0
..born8
复选框。
编译时,它在 Windows 上没有显示错误,但在 Linux 上我有这个错误:
void QAbstractButton::clicked(bool(' 在此上下文
中受到保护 connect(born[i], &QCheckBox::clicked, this, &Automate_2D::on_born_i_clicked(;
我能做些什么来修复它?我不明白为什么它只出现在 Linux 上。
如果它可以帮助某人,我找到了解决方案。 在QT中,我进入了"项目"窗口(左侧(,然后在
Projetct> deskop QT 5.11.0 GCC 64Bit> Build
我刚刚用我刚刚创建的新文件更改了编译的文件路径,该文件是空的。
然后我尝试再次编译我的项目,它奏效了!
(感谢您的帮助(
相关文章:
- 有充分的理由在h文件中使用include保护而不是cpp文件吗
- 为什么在保护模式下继承升级不起作用
- 访问被拒绝后,c++中的故障保护代码
- C++:无法访问声明的受保护成员
- 为什么您需要C++头文件的包含保护
- lock_guard是否保护返回值
- 如何在GTK程序运行时禁用屏幕保护程序/电源管理/屏幕消隐
- 继承和友元函数,从基类访问受保护的成员
- 为什么派生类的好友不能使用受保护的成员?
- C++:为什么无法在派生类中访问受保护的构造函数?
- 公共/私有/受保护是否会更改内存中结构的排列?
- 所以我正在为我的学校作业练习继承,但我无法正确实施标题保护
- C2011: 'Card':"类"类型重新定义(尽管使用了包含保护并且没有在文件中重新定义.cpp类)
- 在父类中公开受保护的构造函数
- 如何从其他结构访问受保护的结构变量
- C++标头保护语法和标头放置
- 如何实现返回受保护结构的私有函数
- 相同的层次结构,访问基类的受保护成员时的行为不同
- 使用标头保护的多个定义链接错误
- 'void QAbstractButton::clicked(bool)'受到保护