我试图在 ESP-IDF 上找到一个等效函数,类似于 arduino 的 Stream() ,我想做的是使 MSP 函数与 ESP UART 的 MSP 协议进行通信,我我在 Ubuntu 环境中使用 ESP-IDF 和 Free-Rtos 并使用 cmake 构建
https://www.arduino.cc/reference/en/language/functions/communication/stream/https://github.com/yajo10/MSP-Arduino/blob/master/MSP.cpp
我尝试使用 std::stringstream* 但显然没有做同样的工作
回答1
ostringstream
是一个专门的 ostream
,其中“设备”是内存缓冲区。 Stream
是许多设备子类的非专用基类,它是双向的。给定合适的 stream I/O 驱动程序的标准库等效项将分别是 std::istream
和 std::ostream
用于输入和输出,每个都在特定设备上打开。在大多数情况下,您将使用派生的 std::ifstream
和 std::ofstream
类并将设备作为“文件 stream”打开。
如果您需要相同的接口来使用未修改的代码,那么将 Stream
实现为 iostream
的包装器是可行的。