谁能解释我为什么在编译过程中会存在这些错误?
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
谢谢你的帮助 :)
最佳答案
您的编译器无法使用类内初始化来初始化ILI9341_due &LCD
。而是在构造函数的初始化列表中对其进行初始化。