C++ 在blackberry 10中访问单例类方法

C++ 在blackberry 10中访问单例类方法,c++,singleton,blackberry-10,blackberry-cascades,C++,Singleton,Blackberry 10,Blackberry Cascades,我实现了单例类方法hpp和cpp,如下所示 辛格尔顿水电站 class Singleton { private: Singleton(); public: virtual ~Singleton(); static Singleton &instance(); int getMemberField(); void setMemberField(int mf); private: static Singleton *p_in

我实现了单例类方法hpp和cpp,如下所示

辛格尔顿水电站

    class Singleton {
private:
    Singleton();

public:
    virtual ~Singleton();
    static Singleton &instance();

    int getMemberField();
    void setMemberField(int mf);

private:
    static Singleton    *p_instance;

    int                 m_memberField;
};
Singleton.cpp

Singleton* Singleton::p_instance=NULL ;

Singleton::Singleton() {
    p_instance = this;
    m_memberField = 0;
}

Singleton::~Singleton() {
    p_instance = NULL;
}

Singleton&    Singleton::instance() {
    if (p_instance==NULL) {
        p_instance = new Singleton();
    }
    return *p_instance;
}
int Singleton::getMemberField(){
    return m_memberField;
}

void Singleton::setMemberField(int mf){
     m_memberField = mf;
}
我的问题是如何访问应用程序类中的set或get方法。
请帮助,

p\u instance=this不需要此行,因为您需要
p_instance=new Singleton()instance()
中,让我们假设您这样做是为了获取实例“Singleton*s=Singleton::instance(),然后您可以像s->set()和s->get()那样调用它您能更具体地说明您遇到的问题吗?@Saran san:注意,他的单身汉返回的是一个
singleton
,而不是
singleton*
@kernald:您是对的!!抱歉,错过了:)
Singleton::instance().setMemberField(42);