ARDUINOJSON_ENABLE_STD_STRING
The macro ARDUINOJSON_ENABLE_STD_STRING
controls the support of the type std::string
in the library.
If ARDUINOJSON_ENABLE_STD_STRING
is defined 1
, then std::string
is supported.
Default value
On C++17-capable compilers, ArduinoJson can detect the presence of the <string>
header. In that case, the default value of ARDUINOJSON_ENABLE_STD_STRING
is:
1
if<string>
is available,0
otherwise.
On older compilers, ArduinoJson tries to guess whether std::string
is available or not, based on the presence of the ARDUINO
macro. In that case, the default value of ARDUINOJSON_ENABLE_STD_STRING
is:
0
ifARDUINO
is defined,1
otherwise.
In other words, ArduinoJson assumes that std::string
is available as soon as you work outside of Arduino.
How to force support for std::string
?
If you need to force the support of std::string
, add the following line at the top of your program:
#define ARDUINOJSON_ENABLE_STD_STRING 1
#include <ArduinoJson.h>
How to disable support for std::string
If for some reason, you need to disable the support for std::string
, add the following line at the top of your program:
#define ARDUINOJSON_ENABLE_STD_STRING 0
#include <ArduinoJson.h>