2014-04-18 118 views
0

我刚开始在我的MacBook Pro上使用AppCode 2.5.5进行C++编码。 问题是IDE不断显示错误警告,但(我认为)没有错误。显示错误消息的AppCode [C++]

这是Token_stream.h

#include <string> 
#include <iostream> 

using namespace std; 

enum class Kind : char { 
    name, 
    number, 
    end, 
    plus = '+', 
    minus = '-', 
    mul = '*', 
    div = '/', 
    print = ';', 
    assign = '=', 
    lp = '(', 
    rp = ')' 
}; 

struct Token { 
    Kind kind; 
    string string_value; 
    double number_value; 
}; 

class Token_stream { 
private: 
    void close(); 
    istream *ip; 
    bool owns; 
    Token ct {Kind::end}; 

public: 
    Token_stream(istream &s) : ip {&s}, owns {false} {} 
    Token_stream(istream *p) : ip {p}, owns {true} {} 
    ~Token_stream(); 
    Token get(); 
    const Token& current(); 
    void set_input(istream &s); 
    void set_input(istream *p); 
}; 

double error(const string &s); 

AppCode一直说的是, “;” 在令牌CT {类::结束}丢失;

谁能告诉我发生了什么事?

这里是链接到截图:https://app.box.com/s/jgdeufoi2f32aaj00gh9

感谢。

+0

你从哪里得到这段代码?你为什么认为'Token ct {Kind :: end};'是有效的C++?对我脑海中的解析器来说,它看起来并不合适。你打算做什么? –

回答

0

该代码是很好的,这是AppCode OC-9218OC-4724中的错误。 他们将在下一个EAP中修复。