ws2811_t: 在 C++ 中从 C 库正确初始化 typedef 结构
ws2811_t: Initializing typedef struct from C library properly in C++
我正在尝试在 C++ 项目中使用来自 jgraff (https://github.com/jgarff/rpi_ws281x) 的 C 库。使用库编译示例时,字符串可以完美运行,但在我的 C++ 项目中,代码无法编译。
首先,我 运行 遇到了与这里描述的相同的问题:
我还在学习 C++ 的路上,但这个结构超出了我的理解范围,因此我只是将代码复制过来,现在出现以下错误。
error : braces around scalar initializer for type ‘int’
然后我将结构的初始化剥离为以下内容:
ws2811_t ledstring =
{
nullptr,
TARGET_FREQ,
DMA,
GPIO_PIN, 0, LED_COUNT, 255
};
现在我收到以下错误:
error: invalid conversion from ‘int’ to ‘const rpi_hw_t*’
谁能告诉我哪里出了问题?
在 g++ 中使用 -fpermissive 选项会将此错误视为警告并且代码编译良好。
我正在尝试在 C++ 项目中使用来自 jgraff (https://github.com/jgarff/rpi_ws281x) 的 C 库。使用库编译示例时,字符串可以完美运行,但在我的 C++ 项目中,代码无法编译。
首先,我 运行 遇到了与这里描述的相同的问题:
我还在学习 C++ 的路上,但这个结构超出了我的理解范围,因此我只是将代码复制过来,现在出现以下错误。
error : braces around scalar initializer for type ‘int’
然后我将结构的初始化剥离为以下内容:
ws2811_t ledstring =
{
nullptr,
TARGET_FREQ,
DMA,
GPIO_PIN, 0, LED_COUNT, 255
};
现在我收到以下错误:
error: invalid conversion from ‘int’ to ‘const rpi_hw_t*’
谁能告诉我哪里出了问题?
在 g++ 中使用 -fpermissive 选项会将此错误视为警告并且代码编译良好。