프로그램에서이 기능을 실행하기위한 명령을 입력 할 때마다 실행되고 다음과 같이 충돌합니다.이 특정 기능을 실행 한 후 내 프로그램이 중단되는 이유는 무엇입니까?
"응용 프로그램이 비정상적으로 종료되도록 런타임을 요청했습니다."
왜 이렇게합니까?
void showInventory(player& obj) {
std::cout << "\nINVENTORY:\n";
for(int i = 0; i < 20; i++) {
std::cout << obj.getItem(i);
i++;
std::cout << "\t\t\t" << obj.getItem(i) << "\n";
}
}
std::string getItem(int i) {
return inventory[i];
}
getItem()은 어떻게 작성됩니까? 배열에 직접 색인을 붙일 수 있습니까? 경계선을 벗어 났니? –
'i'가 모든 루프 반복에서 3 번 증가한다는 사실과 관련이있을 수 있습니다. – chris
문자열 ('char *')과'obj.getItem (i)'의 반환 값을 추가하고 있습니다. 아마도'+'대신에'<<'를 사용하려고했을 것입니다. – Schnouki