cannot convert 'std::string' to 'String'
Boards Manager 中将 Arduino ESP32 板软件更改为版本 3.x 则会出现该问题。这是新版本(C++ STL)的STRING 转换为 (Arduino WString)出现的问题。
解决方法(两种):
ESP32 Boards Manager回退版本 2.0.17,可以正确编译和运行。
将std::string改为String (如果源码中含有std::string(deviceName).substr(0, 15)等用法,则直接使用deviceName,即 deviceName(std::string(deviceName).substr(0, 15))改为 deviceName(deviceName),.h文件也别忘了改哦)
老实说很不建议使用arduino String,尽量用char
浙公网安备 33010602011771号