1
rapidjson::Document doc;
//parse doc
const rapidjson::Value& object = doc["Object"];
checkSomething(object);

checkSomething(const rapidjson::Value& object) const
{
//do something with it
}

I am trying to pass a part of the JSON document to a function.

How do I correctly pass an object like this?

It works perfectly fine when I try it like this:

rapidjson::Document doc;
//parse doc
checkSomething(doc["Object"]);

checkSomething(const rapidjson::Value& object) const
{
//do something with it
}

How do I have to reference the object for it to work?

Moosi312
  • 31
  • 1
  • 6

1 Answers1

1

You have a reference to a const rapidjson::Value, you can't drop the const.

Either change the function to take const rapidjson::Value &, or change object to not be a const reference rapidjson::Value& object = doc["Object"];

Caleth
  • 52,200
  • 2
  • 44
  • 75