Я пытался получить доступ к кадру, который имеет координаты X и Y, используя yaml. Все работало нормально, когда я имел &frame_node
вместо *frame_node
, но для использования FindValue
функция, которую я должен был использовать *frame_node
, Тем не мение, frame_node[0]
, frame_node[1]
и т.д., дайте мне ошибку сейчас. Не могли бы вы помочь мне решить эту проблему?
if (const YAML::Node *frame_node = config_node.FindValue("frame")) {
//const YAML::Node &frame_node = config_node["frame"];
std::cout << "Hello" << std::endl;
hasCard = 1 ;
// X-coordinates.
frame_node[0] >> x[0];
frame_node[1] >> x[1];
frame_node[2] >> x[2];
frame_node[3] >> x[3];
// Y-coordinates.
frame_node[4] >> y[0];
frame_node[5] >> y[1];
frame_node[6] >> y[2];
frame_node[7] >> y[3];
}
frame_node
это указатель, так frame_node[1]
даст вам указатель арифметики. Ты хочешь (*frame_node)[1]
,
Других решений пока нет …