简体   繁体   English

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

[英]`*' cannot appear in a constant-expression

Could anyone explain me why does those errors exist during my compilation? 谁能解释我为什么在编译过程中会存在这些错误?

class ILI9341_due;

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

    void initDisplay();
    void drawMenu();


};

And the errors are: 错误是:

'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

Thanks for any help :) 谢谢你的帮助 :)

Your compiler cannot initialize ILI9341_due &LCD with in-class initialization. 您的编译器无法使用类内初始化来初始化ILI9341_due &LCD Initialize it in constructor's initialization list instead. 而是在构造函数的初始化列表中对其进行初始化。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM