我有这样的课
class A : public QDialog
{
A(QWidget *parent);
static map<int,QString> dataa;
};
class B : public QThread
{
public void run();
}
class C : public QDialog
{
public void abc();
}
类的定义
void B::run()
{
in this function,i am using __dataa__ as __dataa.insert__which is defined initially in A class as public.
}
void C::abc()
{
in this function also,i am using __dataa__ as __dataa.find__ and dataa.end__ which is defined initially in A class as public.
}
现在请帮助我如何在其他两个类 B 和 C 中使用该变量 dataa。在某处我看到我们必须将其声明为静态并在 B 和 C 类中将其用作 A::data 但它不起作用并给出错误。
这三个类被初始化为
int main()
{
A window;
B datathread;
datathread.start
//B is Qthread inherited and A,C are QDialog inherited
}
C 类通过单击 A 类上的按钮并在新窗口中打开其对话框从 A 类初始化。我想这一次我不会因为没有明确地提出我的问题而受到指责。请以上帝的名义帮助我,因为我长期以来一直被困在这个问题上。非常感谢任何形式的帮助。