1
조건으로 벡터를 통해 루프에서 결과를 얻은 다음 그 결과에 대해 작업을 수행해야합니다.for 루프는 while 조건으로 어떻게합니까?
do{result}
내 데이터는 박탈 연속 인바운드 JSON 데이터는 I [2]를 선택한 후 [3] 다른 벡터에 항목을 보낼 항목을 확인해야 할 7 그룹에서 JSON 성질의 것입니다.
vector<std::string> buydat;
vector<std::string> pricedat;
for(int b = 2; b < buydat.size(); b+=7){
do{
pricedat.push_back(buydat[3]);
}
while(
//(int b = 2; b < buydat.size(); b+=7;)
buydat[b] == "Buy"
);
}
:
내 상태는 내 행동이
do{
pricedat.push_back(buydat[3]);
}
내 결과가
로 표시 할 수 있습니다
for(int d = 0; d < pricedat.size(); ++d){
cout << pricedat[d] << " " << endl;
}
내 코드입니다
(for(int b = 2; b < buydat.size(); b+=7);
buydat[b] == "Buy")
입니다 16,
내 오류 :
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Aborted
어떻게 조건으로 루프 결과에 대한합니까? 데이터를 7 번 반복 -> 항목 [2]에 유효성 검사 -> 해당 계열의 항목 [3]을 벡터로 보냅니다.
조건이 종료되지 않습니다. 'buydat [b]'는'do'-'while' 루프 본문에서 수정되지 않습니다. – Columbo
현재 두 개의 중첩 루프가 있습니다. 'buydat [b] == "Buy"가 true이면 내부 루프는 종료되지 않으므로 벡터에 대한 메모리가 부족합니다. 나는 당신이 대신하기를 원하는 것을 보는데 어려움을 겪고있다. 아마 if (buydat [b] == "Buy") {pricat.push_back (buydat [3]); }'? 어쨌든 코드가 달성하고자하는 것을 설명하는 게시물을 업데이트하는 것이 유용 할 것입니다. –
매 7 초마다 종료하고 다음 세트로 다시 처리해야합니다. – nerd007