`*'不能出现在常量表达式中

时间:2015-02-12 14:52:10

标签: c++ class constants constant-expression

有人可以解释一下为什么我的编辑过程中存在这些错误吗?

class ILI9341_due;

class LCD_ILI9341
{
private:
    ILI9341_due *tLCD;
    ILI9341_due &LCD = *tLCD;
public:
    LCD_ILI9341();
    ~LCD_ILI9341();

    void initDisplay();
    void drawMenu();


};

错误是:

'LCD_ILI9341::tLCD' cannot appear in a constant-expression
`*' cannot appear in a constant-expression
ISO C++ forbids initialization of member 'LCD'
making 'LCD' static

感谢您的帮助:)

1 个答案:

答案 0 :(得分:1)

您的编译器无法使用类内初始化初始化ILI9341_due &LCD。而是在构造函数的初始化列表中初始化它。