【问题标题】:c++ if (DEBUG) ... expected primary-expression before '==' tokenc++ if (DEBUG) ... '==' 标记之前的预期主表达式
【发布时间】:2011-05-10 12:07:41
【问题描述】:
  #define DEBUG 1

  void senddata() {
  ...
  if (DEBUG==1) {
  cout << row->Printable () << endl;
  };

  ....
  }

getrow.cc:在函数 'void senddata()' 中: getrow.cc:277: 错误: '==' 标记之前的预期主表达式

IMO 几天前该代码正在运行... - 知道这里出了什么问题吗?

【问题讨论】:

  • 猜测,有些东西是未定义 DEBUG。
  • 是的,我重命名了它,这很好。我最近更改了构建环境,新系统似乎定义/取消定义 DEBUG 。你想把它复制到一个答案中,无人问津吗?

标签: c++ expression


【解决方案1】:

我根本不会那样做。这似乎更合适:

#ifdef DEBUG
    cout << row->Printable() << endl;
#endif

如果您做错了什么(例如在某处忘记了分号),这也会产生更好的警告和错误。

【讨论】:

    猜你喜欢
    • 2012-02-02
    • 2013-08-29
    • 2013-02-23
    • 1970-01-01
    • 1970-01-01
    • 2015-03-31
    • 2012-07-08
    • 2015-01-03
    • 1970-01-01
    相关资源
    最近更新 更多