-
-
Notifications
You must be signed in to change notification settings - Fork 7.3k
Closed
Labels
kind: questionsolution: proposed fixa fix for the issue has been proposed and waits for confirmationa fix for the issue has been proposed and waits for confirmation
Description
Hi,
I'm trying to save a std::map<int, std::string> into a json, and then the json is saved in a file.
nlohmann::json db;
db = mymap;
std::ofstream output_file(filename);
output_file << std::setw(4) << db << std::endl;The problem is the result of the json:
I'm expecting this kind of output:
{ 1 : "one", 2 : "two"}
However, the result is:
[ [1, "one"], [2, "two"]]
So, when in other program I'm trying to read that file and try to save it in a json for doing the conversion to std::map again, I'm having the next error:
error: ambiguous overload for ‘operator=’ (operand types are ‘std::map<int, std::__cxx11::basic_string<char> >’ and ‘nlohmann::json {aka nlohmann::basic_json<>}’)
I've been looking in similar errors like #607, but I don't find a solution.
I've tried to build the map manually but the output is the same. Maybe I'm missing something.
Thanks in advance
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
kind: questionsolution: proposed fixa fix for the issue has been proposed and waits for confirmationa fix for the issue has been proposed and waits for confirmation