我创建了一个单例类,并尝试在其他类中访问该类,但出现错误
“无法访问私人成员”

Setupconfig是我的单例课程,我正尝试在其他具有QMainWindow的课程中访问此类

这是错误消息:


  错误“ Setupconfig :: Setupconfig”:无法访问私有成员
  在类'Setupconfig'中声明


Setupconfig.h
static Setupconfig *buiderObj()
{
    static Setupconfig *_setupObj= new Setupconfig();
    return _setupObj;
}

private:
Setupconfig();

//////////////////////////////////////
EasyBudget.h
class EasyBudget : public QMainWindow, public Ui::EasyBudgetClass, public Setupconfig
{
Q_OBJECT
public:
Setupconfig *setupObj;
}

//////////////////////////////////////
EasyBudget.cpp
EasyBudget::EasyBudget(QWidget *parent, Qt::WFlags flags)
: QMainWindow(parent,Qt::FramelessWindowHint)
 {
 setupObj=Setupconfig::buiderObj();
 }

最佳答案

为什么从单例类“ SetupConfig”派生“ EasyBudget”?

删除该部分即可解决您的问题。

EasyBudget.h
class EasyBudget : public QMainWindow, public Ui::EasyBudgetClass
{......

10-08 11:56