首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >c++单例结构队列

c++单例结构队列
EN

Stack Overflow用户
提问于 2017-03-07 17:19:25
回答 1查看 207关注 0票数 0

singleton变量中有一个队列。

但是,当从另一个类推送时,推送值不匹配,错误继续。

请。

单例标头

代码语言:javascript
复制
typedef struct _Hybrid_Message_st
{
   int hy_state;
    std::string hy_msg;
} Hybrid_Message_st;

class Hybrid_Singleton
{
  private:
    static Hybrid_Singleton *instance;
    Hybrid_Singleton(void){}
  public:
    ~Hybrid_Singleton(void){}
    static Hybrid_Singleton* getInstance();
    std::queue<Hybrid_Message_st> hy_queue;
    int count;
 };

单例源代码

代码语言:javascript
复制
  Hybrid_Singleton* Hybrid_Singleton::getInstance()
  {
    if(instance == NULL)
    {
        instance = new Hybrid_Singleton;
    }

    return instance;
 }

 Hybrid_Singleton *Hybrid_Singleton::instance = NULL;

有问题吗?

代码语言:javascript
复制
 Hybrid_Message_st ss;
 ss.hy_state = 0;
 ss.hy_msg = "Hellow";
 Hybrid_Singleton::getInstance()->hy_queue.push(ss);

错误

代码语言:javascript
复制
 error: no matching function for call to ‘std::queue<_Hybrid_Message_st>::push(broadcast_server::Hybrid_Message_st&)’
EN

回答 1

Stack Overflow用户

发布于 2017-03-07 17:28:45

看起来ss类型是一个broadcast_server::Hybrid_Message_st,而Singleton使用的是Hybrid_Message_st。请注意这两种类型在命名空间上的区别。

有可能你在代码中的某个地方使用了using broadcast_server

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42644351

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档