Подключение пространства имён std
- Войдите на сайт для отправки комментариев
Всем доброго дня. В общем есть вопрос, возможно странный, я не знаток ардуино. Можно ли подключить к проекту ардуино пространство имён std? Если написал какой-то бред - заранее извиняюсь, я только начал изучать С++.
Для чего это: делаю проект в университете - система автоматического климат контроля для производства. Пишу на плате NodeMCU, данные берутся API запросом с сайта openweathermap, в ответ с сервера приходит json-объект который записывается в строку. Ардуиновская библиотека не может парсить этот объект как я понимаю. Грубо говоря библиотека способна работать со строкой (массивом чаров) типа:
char json[] = "{\"sensor\":\"gps\",\"time\":1351824120,\"data\":[48.756080,2.302038]}";
А с сайта приходит ответ типа:
{"lat":47.2364,"lon":39.7139,"timezone":"Europe/Moscow"}
Как я понимаю парсинг не выходит из-за отсутствия обратных слешей (видимо для ардуиновской библиотеки это escape-последовательность и на этом завязана логика парсинга).
Поэтому я решил подключить json.hpp от nlohmann, но в нем используется пространство имён std. Сам по себе файл рабочий в проектах консольного приложения например, но в проекте ардуино нет. Есть консольное приложение которое выполняет аналогичную задачу и json.hpp от nlohmann прекрасно парсит данные из ответа с сайта.
Нет там никакой логики парсинга ни на чём завязанной, все зависит от того в состоянии ты написать парсер под свою задачу или нет.
я не знаток ардуино... я только начал изучать С++.
...
Как я понимаю парсинг не выходит из-за отсутствия обратных слешей (видимо для ардуиновской библиотеки это escape-последовательность и на этом завязана логика парсинга).
Думаю, что Вы неправильно понимаете. Что, в принципе, согласуется с началом цитаты.
Выясните, что в С++ означает обраный слеш, и только потом пытайтесь понять, как работает парсинг, а не наоборот.
Ограничено std работает в ардуино, и ограничения разные от платы к плате. Но проблема тут в том, что ты не понимаешь, что делаешь.