std::vector
에 대한 인덱스 액세스가 필요하므로 인덱스를 이미 삭제했는지 확인한 다음 새 값을 설정해야합니다.주어진 인덱스가 std :: vector에 있는지 확인하십시오.
여기 내 setter 함수입니다 :
void SetVector(int position, int value) {
std::vector<int>iterator it = testVector.begin();
// need a check here
testVector.insert(it-testVector.begin()+position, value);
}
또는이 내 요구에 대한 잘못된 C++ 모음입니다? 동적으로 증가해야하므로 std:array
이 가능하지 않습니다. std::map
을 사용할 수 있지만 std::vector
으로 가능할 수도 있습니다. 당신이 모든 요소를 통과 할 수 반복자 및 제거 요소처럼 각각의 작업을 수행 thsi 사용
std::vector<int>::iterator it;
it = myvector.begin();
for (it=myvector.begin(); it<myvector.end(); it++)
std::cout << ' ' << *it;
를 사용하여 벡터에 대한 반복자를 얻을
가장'경우 (위치
jogojapan
새 항목을 삽입 하시겠습니까? 아니면 기존 값을 변경 하시겠습니까? – doctorlove
인덱스가 설정되지 않았 으면 삽입하거나 먼저 설정 한 다음 인덱스를 삭제하고 새 값을이 위치에 저장합니다. – leon22