Arduino 中 'StandardCplusplus' 库的问题

Issues with 'StandardCplusplus' Library in Arduino

我不得不用 C++ 为 Arduino 编写一些代码。代码运行完美,但在 Arduino 中不起作用,因为我使用了一些库,如 vectors、ifstream 等。

所以我包含了 StandardCplusplus 库。我下载了 zip version of the library.

我把解压出来的版本复制到Arduino的library文件夹中。现在矢量库可以工作了,即它不会给出任何编译错误。

但是在 #include fstream 上,Arduino 给出了以下错误:fatal error: unistd.h: No such file or directory

有点晚了,但也许其他人遇到了同样的问题,就像我在几分钟前寻找答案一样。我通过定义符号ARDUINO把问题从错误变成了警告(我用的是eclipse,所以我在项目的Properties --> C/C++ Build --> Settings中添加了一个新的符号--> AVR Compiler / AVR C++ Compiler --> Symbols。不知道你用的是什么,但你可以在调用 avr-g++ 时添加 -DARDUINO)。问题出在 ios.cpp 文件中,您有: #ifdef ARDUINO #include <HardwareSerial.h> #include <serstream> #else #include <fstream> #endif 一旦在 ios.cpp 文件中看到 ARDUINO 符号,就会采用两个较早的包含而不是 fstream。