C ++ json вставить в массив - PullRequest
       30

C ++ json вставить в массив

0 голосов
/ 23 февраля 2020

Я использую nlohmann json. Я хочу вставить в массив. Я знаю, что в javascript есть Array.prototype.splice, который позволяет вставлять в массив. Есть ли подобный способ в json.

от nlohmann? Я хочу, чтобы это произошло:

//from this:
[1, 2, 3, 5]

//insert at position 3 the value 4
[1, 2, 3, 4, 5]

В основном я хочу что-то похожее на метод вставки std::vector.

1 Ответ

1 голос
/ 23 февраля 2020

Следующий пример должен работать, предполагая, что вы используете json.hpp single-include и он входит в набор включаемых каталогов, используемых вашим компилятором. В противном случае измените #include, если необходимо .:

#include "json.hpp"                                      
#include <iostream>                                      

int main() {                                             
  nlohmann::json json = nlohmann::json::array({0, 1, 2});
  std::cout << json.dump(2) << "\n\n";                     
  json.insert(json.begin() + 1, "foo");                  
  std::cout << json.dump(2) << '\n';                     
}                

Это должно вывести:

[
  0,
  1,
  2
]

[
  0,
  "foo",
  1,
  2
]
...