下面显示了JSON文件。
{
"instruments": [
{
"minShift": -1.0, // opcjonalnie - jeśli brak, to taka, jak dla globalnych ustawień
"maxShift": 1.0, // opcjonalnie - jeśli brak, to taka, jak dla globalnych ustawień
"stepShift": 0.01, // opcjonalnie - jeśli brak, to taka, jak dla globalnych ustawień
"instrument_old": "CFH/EURUSD",
"instrument_new": "LMAX/EURUSD"
},
{
"minShift": -1.0, // opcjonalnie - jeśli brak, to taka, jak dla globalnych ustawień
"maxShift": 1.0, // opcjonalnie - jeśli brak, to taka, jak dla globalnych ustawień
"stepShift": 0.01, // opcjonalnie - jeśli brak, to taka, jak dla globalnych ustawień
"instrument_old": "CFH/EURUSD",
"instrument_new": "Saxo/EURUSD"
},
{
"minShift": -1.0, // opcjonalnie - jeśli brak, to taka, jak dla globalnych ustawień
"maxShift": 1.0, // opcjonalnie - jeśli brak, to taka, jak dla globalnych ustawień
"stepShift": 0.01, // opcjonalnie - jeśli brak, to taka, jak dla globalnych ustawień
"instrument_old": "LMAX/XAUUSD",
"instrument_new": "Saxo/XAUUSD"
}
]
}我想进入每一个“乐器”,让每一个领域进入结构。它将成为结构的矢量。
我试过这样做(但没有正常工作):
BOOST_FOREACH( ptree::value_type& node,pt.get_child("instruments") )
{
InstrumentInfo instrumentInfo;
instrumentInfo.shiftInfo.minShift = pt.get<double>("minShift",shiftInfo.minShift);
instrumentInfo.shiftInfo.maxShift = pt.get<double>("maxShift",shiftInfo.maxShift);
instrumentInfo.shiftInfo.stepShift = pt.get<double>("stepShift",shiftInfo.stepShift);
instrumentInfo.instrumentOld = pt.get<string>("instrument_old","");
instrumentInfo.instrumentNew = pt.get<string>("instrument_new","");
instrumentsInfo.push_back(instrumentInfo);
}发布于 2014-03-19 16:46:42
我有一个答案:
BOOST_FOREACH( ptree::value_type& node,pt.get_child("instruments") )
{
InstrumentInfo instrumentInfo;
instrumentInfo.shiftInfo.minShift = node.second.get<double>("minShift",shiftInfo.minShift);
instrumentInfo.shiftInfo.maxShift = node.second.get<double>("maxShift",shiftInfo.maxShift);
instrumentInfo.shiftInfo.stepShift = node.second.get<double>("stepShift",shiftInfo.stepShift);
instrumentInfo.instrumentOld = node.second.get<string>("instrument_old","");
instrumentInfo.instrumentNew = node.second.get<string>("instrument_new","");
instrumentsInfo.push_back(instrumentInfo);
}https://stackoverflow.com/questions/22512177
复制相似问题